在不同文件中使用节点模块创建全局变量

Creating global variables using node modules in different files

我想使用 data.js 在 main.js 中创建全局变量。这将允许我添加尽可能多的颜色条目,在 main.js 中创建变量而无需复制粘贴。这行不通,我不知道该怎么做,我很确定这是一个很好的例子,我可能拼错了,但你明白了。

//data.js

module.exports = {
   colors: {
      red: ['10','40','25'],
      black: ['50','99','1'],
      yellow: ['67','87','53'] 
   }
}
//main.js
 
data = require(./data.js);
colors = Object.keys(data);

for(i = 0; i < colors.length; i ++){
    eval(colors[i]) = data.colors[colors[i]];
}

console.log(black);
//wanted output: ['50','99','1']

将 eval 部分放在一起修复它。

//main.js
 
data = require(./data.js);
colors = Object.keys(data);

for(i = 0; i < colors.length; i ++){
    eval(colors[i] + '= data.colors[colors[i]]');
}

console.log(black);
//output: ['50','99','1']