Javascript 如何从Node.js中的数组中的值创建对象?

Javascript 如何从Node.js中的数组中的值创建对象?,javascript,arrays,node.js,object,Javascript,Arrays,Node.js,Object,我有一个数组,由一个单词列表、每个单词的单词数和ID组成。有点像: var array = [[word1, word2, word3],[3,5,7],[id1,id2,id3]] 现在,我想为每个单词创建一个对象,用单词作为名称,count和ID作为值。所以看起来是这样的: var word1 = {count: 3, id: 'id1'} var words = {}; for (var y=0; y < array[0].length; y++) { words[ar

我有一个数组,由一个单词列表、每个单词的单词数和ID组成。有点像:

var array = [[word1, word2, word3],[3,5,7],[id1,id2,id3]]
现在,我想为每个单词创建一个对象,用单词作为名称,count和ID作为值。所以看起来是这样的:

var word1 = {count: 3, id: 'id1'}
var words = {};

for (var y=0; y < array[0].length; y++) {
    words[array[0][y]] = {count: array[1][y], id: array[2][y]};
}
我如何做到这一点? 我试着使用如下所示的for循环来实现它,但它不起作用。如何根据数组中的值设置每个对象的名称

for (var y=0; y < array[0].length; y++) {
        var array[0][y] = {count: array[1][y], id: array[2][y]};
    }
for(变量y=0;y
您可以在一个dict对象中添加单词,而不是单独的对象,如下所示:

var word1 = {count: 3, id: 'id1'}
var words = {};

for (var y=0; y < array[0].length; y++) {
    words[array[0][y]] = {count: array[1][y], id: array[2][y]};
}

您可以将单词添加到一个dict对象中,而不是单独的对象,如下所示:

var word1 = {count: 3, id: 'id1'}
var words = {};

for (var y=0; y < array[0].length; y++) {
    words[array[0][y]] = {count: array[1][y], id: array[2][y]};
}

如果您知道
array[0]
是顺序键,
array[1]
是计数,
array[2]
是ID,那么:

var array = [[word1, word2, word3],[3,5,7],[id1,id2,id3]];

var orderedKeysArray = array[0];
var orderedCountArray = array[1];
var orderedIdArray = array[2];

//maybe add some code here to check the arrays are the same length?

var object = {};

//add the keys to the object
for(var i = 0; i < orderedKeysArray.length; i++) {
  object[orderedKeys[i]] = {
    count: orderedCountArray[i],
    id: orderedIdArray[i]
  };
}

如果您知道
array[0]
是顺序键,
array[1]
是计数,
array[2]
是ID,那么:

var array = [[word1, word2, word3],[3,5,7],[id1,id2,id3]];

var orderedKeysArray = array[0];
var orderedCountArray = array[1];
var orderedIdArray = array[2];

//maybe add some code here to check the arrays are the same length?

var object = {};

//add the keys to the object
for(var i = 0; i < orderedKeysArray.length; i++) {
  object[orderedKeys[i]] = {
    count: orderedCountArray[i],
    id: orderedIdArray[i]
  };
}
负载灰

var array = [['word1', 'word2', 'word3'],[3,5,7],['id1','id2','id3']]

var output = _.reduce(array[0], function (output, word, index) {
    output[word] = {count:array[1][index],id:array[2][index]};
  return output;
},{});
负载灰

var array = [['word1', 'word2', 'word3'],[3,5,7],['id1','id2','id3']]

var output = _.reduce(array[0], function (output, word, index) {
    output[word] = {count:array[1][index],id:array[2][index]};
  return output;
},{});

我更喜欢你用loadash我更喜欢你用loadash。