在 node.js 模块中,变量声明在模块内保持私有:
var a = 'x';
比方说,我想以这种方式声明一些变量。我不能使用下面的代码,因为像这样变量变得非常全局并且在其他模块中也可见:
var xs = ['a', 'b', 'c', 'd'];
for (key in xs) {
var value = xs[key];
global[value] = 'x';
}
有没有办法只为模块做到这一点?我需要这个,因为我需要一个库('gl-matrix'),它本身有几个我需要在模块中轻松访问的子对象。我想避免:
var gl_matrix = require('gl-matrix');
var vec2 = gl_matrix.vec2;
var vec3 = gl_matrix.vec3;
var mat3 = gl_matrix.mat3;
[...]