我有一个需要迭代的对象,它是这样构建的:
points[m] = {
coordinate1: 34,
coordinate2: 23,
code: ["LEM"],
location: '123 fake street'
}
如果当前点(point [m])与另一个点匹配,我想将点[m] .code添加到它匹配的点,以构建一个唯一的对象数组,如下所示:
pointsUnique[l].code.push(point[m].code[0]);
这很好用,除了当我尝试迭代(pointsUnique [l] .code)时:
for(var n=0;n<pointsUnique[l].code.length;n++){
var codeList = pointsUnique[l].code[n];
console.log(codeList);
}
我只在代码数组中得到1个结果,因为(pointsUnique [l] .code.length)显然是1.虽然当我在控制台中查看它时它有15个项目。
对于如何访问(pointsUnique [l] .code)的所有值的任何帮助都将非常感激。
答案 0 :(得分:0)
你的逻辑看起来很好,所以其他东西可能正在发生。你复制/粘贴你的真实代码吗?首先,你有一个拼写错误:
pointsUnique[l].code.push(point[m].code[0]);
应该是points[m]
而不是point[m]
。
此外,这个神秘的l
变量是什么?这也可能是一个问题,虽然没有办法从你发布的代码中知道。