data.js
function Data(data){
console.log("init a new Data()");
this.name = data.name;
this.id = data.id;
}
module.exports = {
player: new Data({id:1,name:'xxx'})
}
}
a.js
require('data')//这里就直接输出init a new Data()
接着在执行b.js
require('data')//现在没有输出init a new Data()
如何理解这个机制,module.exports只有第一次被require的时候回去初始化数据,以后被缓存了直接拿来用?