今天要來帶大家認識一下TypeScript(TS)的命名空間(Namespace)與模組(Modules),
最主主要會使用到的原因是為了解決在同個專案內命名相同的問題,
意思是說,
即使在不同檔案內,
最後把所有檔案編成同一支,
那可能會導致自己與別人命名了同個函式而其中一個被取代,
而導致功能錯誤的問題,
這時若是使用命名空間與模組便可將每個你想分開的地方分開,
這問題就可以解決了。
模組包含兩種,
而在TS1.5版本之後變更此兩種模組命名方式,
內部模組(Internal modules) => 命名空間(Namespace)
外部模組(External modules) => 模組(Modules)
那麼今天先來簡單的認識一下命名空間與模組吧。
這兩個相似的地方在於
皆用來組織程式碼,並避免名稱衝突。
不同的地方我們用表格來看看,
命名空間(Namespace) | 模組(Modules) |
---|---|
全域範圍(Global Scope) | 有自己的範圍(Scope) |
適用於小型應用程式,且命名空間定義在專案之中 | 適用於外部程式庫 |
不須依賴模組載入器 | 不須依賴模組載入器(ES6以前需要) |
注意事項
今天講的命名空間與模組,
相信沒接觸過的人肯定很陌生,
那今天只是讓大家有初步的了解,
之後會再分別介紹,
大家加油加油。