Node.js将2个数组组合成键:值对

时间:2015-10-01 16:01:24

标签: javascript arrays node.js

我有两个发布到我服务器的数组。长度会发生变化,但每个数组的长度始终与另一个相同。我试图将这些变为关键:值对,并返回这些。但是,我只是空洞的支撑......不确定我在这里做错了什么。

    var macr = {}, i, keys = macs, values = rssi;
    for (i = 0; i < macs; i++) {
    macr[keys[i]] = values[i];
    }
    msg.payload = JSON.stringify(macr);
    return msg;

3 个答案:

答案 0 :(得分:0)

您没有正确设置for循环的长度。试试这个:

for (i = 0; i < macs.length; i++) {
  macr[keys[i]] = values[i];
}

答案 1 :(得分:0)

在迭代数组时,应避免使用for循环,而是选择Array.forEach()。它很容易出错(因为你可以看到你没有正确设置长度)并且它并不清楚你正在做什么。

相反

macs.forEach(function(key, index) {
    macr[key] = values[index];
});

答案 2 :(得分:0)

作为替补:

this.studentGrades = studentGrades;