三分鐘快速了解模組和命名空間

2021-10-02 11:48:15 字數 1710 閱讀 5675

模組的的概念

「外部模組」現在則簡稱為「模組」 模組在其自身的作用域裡執行,而不是在全域性作用域裡;

「內部模組」現在稱做「命名空間」。

​ 這意味著定義在乙個模組裡的變數,函式,類等等在模組外部是不可見的,除非你明確地使用export形式之一匯出它們。

​ 相反,如果想使用其它模組匯出的變數,函式,類,介面等的時候,你必須要匯入它們,可以使用 import形式之一。

模組匯出的幾種方法

由於瀏覽器端無法解析export,可以使用node執行或者用webpack打包工具打包。

匯入匯出方法一

export匯出:

var url=

'***'

;function

getdata()

:void

export

;

import匯入:

import

from

'./modules/db'

//as可以更換名字,位址是export的檔案的位址

console.

log(url)

//***

get(

)//fur

匯入匯出方法二

匯出方法:export default 預設匯出

每個模組都可以有乙個default匯出。 預設匯出使用 default關鍵字標記;並且乙個模組只能夠有乙個default匯出。 需要使用一種特殊的匯入形式來匯入 default匯出。

export匯出:

function

getdata()

:void

export

default getdata;

import匯入:

import getdata from

'./modules/db'

;getdata()

;//fur

在**量較大的情況下,為了避免各種變數命名相衝突,可將相似功能的函式、類、介面等放置到命名空間內,typescript的命名空間可以將**包裹起來,只對外暴露需要在外部訪問的物件。

命名空間內的物件通過export關鍵字對外暴露。

命名空間和模組的區別:

命名空間使用 namespace 來定義:

空間a和b內**一模一樣,可以共存,呼叫時還需要命名空間的名字呼叫

namespace a

export

class

manimplements

person

paly()

:void}}

namespace b

export

class

manimplements

person

paly()

:void}}

var p1 =

newa.man

("fur"

)p1.

paly()

//玩遊戲

var p2 =

newb.man

("fur"

)p2.

paly()

//跑步

↓↓↓

typescript系列學習文章目錄

三分鐘快速了解typeScript 類

類描述了所建立的物件共同的屬性和方法。類的定義 繼承類裡面的修飾符 靜態屬性 靜態方法 抽象類 繼承 多型 類的定義class person run void var p newperson fur console.log p.name fur p.run fur在跑步繼承 run方法說明 子類繼承...

三分鐘了解雲計算

其實我們每一台計算機,都是乙個伺服器,它可以對外提供服務,也可以使用其他服務端提供的服務。不同的時候,它扮演著不同的角色,如果只看它對外提供服務,那它就是服務端,當它使用別人提供的服務時,那它就是客戶端。我們平時訪問的 都會執行在不同的伺服器上。沒錯,你的電腦也能執行乙個 哦。但是有乙個問題,那就是...

三分鐘,了解PLM真諦

實踐中,不少企業特別是一些中小企業,對plm的認識仍然非常模糊,在plm推廣中,我們經常需要給客戶講解plm的理念及價值,免不了打一些比喻,這些比喻多是隨口而出,雖然不是很貼切,但是也有一定的效果。現在簡單總結分享一下。關於plm的發展趨勢 為什麼要上plm,五年前或許是乙個問題,但是現在已經不能算...