标签:
//name.jsvar name = ‘name‘//getName.js 在其中去访问name.js中的name变量console.log (name); =>name
上边导致的要给问题就是:
当引入大量的js文件是模块之间 变量引用很难保证不重叠
所有的js文件在node中执行前,都会被包装进define(require,exports,module,_filePath,_fileName){ //你的js代码 };该函数会返回exports对象,代码中想能从模块外进行访问的变量必需是exports的属性。之后nodejs会编译执行包装过的代码,执行时是通过node的vm模块中的runinThisContext(/包装过的代码/);该函数作用类似于eval()函数,区别在于执行的代码被作用域被限制,代码只能访问代码里边的变量,从而达到模块之间只能通过exports变量进行模块里变量的传递。
标签:
原文地址:http://www.cnblogs.com/gsLiu/p/4509458.html