Javascript 如何从Node.js中修改的对象中获取值
如何获取对象的修改值?index.js在index2.js之前调用 object.jsJavascript 如何从Node.js中修改的对象中获取值,javascript,node.js,Javascript,Node.js,如何获取对象的修改值?index.js在index2.js之前调用 object.js var对象={ 尺寸:'5' }; var setSize=函数(大小){ object.size=大小; } exports.object=对象; exports.setSize=setSize如果单独运行节点index.js和节点index2.js,则index2.js无法“知道”在index.js的最后一个过程中发生了什么。您必须在单个进程运行中应用所有操作。正如@Andrew Li在其评论中所述,您
var对象={
尺寸:'5'
};
var setSize=函数(大小){
object.size=大小;
}
exports.object=对象;
exports.setSize=setSize
如果单独运行节点index.js
和节点index2.js
,则index2.js
无法“知道”在index.js
的最后一个过程中发生了什么。您必须在单个进程运行中应用所有操作。正如@Andrew Li在其评论中所述,您必须在index2.js
中要求index.js
。只要需要它,就会执行它的代码,对obj.object
的更改将保存在节点模块缓存机制中
var obj = require('path/object');
require('./index');
// code inside index.js gets executed, changing obj.size to '10'
// note that this will also log '10' in the console, since a console.log(obj.size)
// is part of your code in index.js
console.log(obj.object.size) //--> 10
如果需要在不同的进程中执行index.js
和index2.js
,但仍然能够访问obj
的一致值,则需要将该值存储在进程空间之外的某个位置,就像在数据库或文件系统中一样。只要求index.js
用于副作用,它将在index.js
中执行代码。谢谢!:))这正是我想要的。