nodejs的模組系統遵循的是commonjs規範
每個檔案就是乙個模組,有自己的作用域。在乙個檔案裡面定義的變數、函式、類,都是私有的,對其他檔案不可見。
//檔案匯出
module.exports =;
exports.name="tom"
//引用模組
const a = require('./a.js');
commonjs規範載入模組是同步的,也就是說,只有載入完成,才能執行後面的操作。這是由於伺服器端的檔案是存在於本地的,載入時間比較短。但在瀏覽器端需要較長時間向伺服器端請求檔案的情況下,這種檔案模組系統並不合適。
es6 在語言標準的層面上,實現了模組功能,而且實現得相當簡單,完全可以取代 commonjs 和 amd 規範,成為瀏覽器和伺服器通用的模組解決方案。
export命令用於規定模組的對外介面,import命令用於輸入其他模組提供的功能。
// 寫法一
export var m = 1;
// 寫法二
var m = 1;
export ;
// 寫法三
var n = 1;
export ;
import from './profile.js'
import * as ob from './profile.js'
//import語句會執行所載入的模組,因此可以有下面的寫法
import 'lodash';
從前面的例子可以看出,使用import命令的時候,使用者需要知道所要載入的變數名或函式名,否則無法載入。
使用export default預設匯出
// export-default.js
export default function ()
// import-default.js
import customname from './export-default';
customname(); // 'foo'
本質上,export default就是輸出乙個叫做default的變數或方法,然後系統允許你為它取任意名字。
// modules.js
function add(x, y)
export ;
// 等同於
// export default add;
import from 'modules';
// 等同於
// import foo from 'modules';
正是因為export default命令其實只是輸出乙個叫做default的變數,所以它後面不能跟變數宣告語句。
// 正確
export var a = 1;
// 正確
var a = 1;
export default a;
// 錯誤
export default var a = 1;
參考:es6入門教程 Python常用模組 系統呼叫os模組
os模組提供了很多允許你的程式與作業系統直接互動的功能。得到當前工作目錄,即當前python指令碼工作的目錄路徑 os.getcwd 返回指定目錄下的所有檔案和目錄名 os.listdir 函式用來刪除乙個檔案 os.remove 刪除多個目錄 os.removedirs r c python 檢驗...
JS的模組機制
複雜的前端專案需要做分層處理,按照功能 業務 元件拆分成模組,模組化的專案至少有以下優點 便於單元測試 便於同事間協作 抽離公共方法,開發快捷 按需載入,效能優秀 有四種模組化規範 以上都是社群衍生的,es module 是 js 官方的模組化方案 下面主要分析 commonjs 和 es modu...
node fs檔案系統模組 常用方法
fs檔案系統模組 讀取檔案操作 第乙個引數為相對路徑 也可傳入絕對路徑 dirname 代表當前目錄的絕對路徑,是乙個字串 第二個引數是乙個 函式 c users administrator desktop 伺服器 demo2 c users administrator desktop 伺服器 de...