exports和module.exports的區別
- 1、
module.exports
初始值是個空對象{}
,exports
一開始是指向module.exports
的,所以exports
初始值也是個空對象{}
;
- 舉例:
module
和exports
這兩個對象是Node.js
的文件中默認隱式存在
console.log(exports);
console.log(module);
//在終端運行:
{}
Module {
id: '.',
exports: {},
...
}
- 2、通過
require
得到的是module.exports
中的內容,而不是exports
的內容。即如果module.exports
當前沒有任何屬性的話,exports
會把屬性賦給module.exports
,如果module.exports
中已經存在一些屬性的話,exports
中的屬性會被忽略
- 舉例:
//把下面的內容放到a.js:
exports.add = 123;
module.exports={
hello:1234
}
//然后在另一個b.js文件中執行它:
var rocker = require('./a.js');
console.log(rocker.add); //undefined
console.log(rocker.hello); //1234
最后編輯于 :
?著作權歸作者所有,轉載或內容合作請聯系作者
平臺聲明:文章內容(如有圖片或視頻亦包括在內)由作者上傳并發布,文章內容僅代表作者本人觀點,簡書系信息發布平臺,僅提供信息存儲服務。