exports默认会给他设置为module.exports的快捷方式,可以把它的里面添加属性,但是我们不能修改它的指向,如果修改了它的指向那它和普通对象没有任何区别了。因为在CommonJS中,模块对外的输出的永远是module.exports和exports如果改了指向的话就不再生效了
举个例子:
10_expos.js
//const exports = module.exports; // ( // function(exports,require,module,__filename,__dirname){ // //code // } // ); // exports.test = 100; //下面这样是行的,就是普通的对象 // exports = { // a: 1, // b: 2, // test: 100 // } module.exports = { a: 1, b: 2, test: 100 }
10_main.js
const mod = require('./10_expos')
console.log(mod.test);