我正在嘗試向對象數組中添加兩個屬性,因此我決定從原始對象數組中創建一個新對象數組,然後設置新屬性。 (我意識到這可能是更簡單的方法)Javascript - 對象數組中的未定義屬性
我的問題是,當我嘗試訪問新數組內的屬性時,它是未定義的。什麼是錯誤可能是明顯的,但對我來說不是。幫幫我!
var join = [];
for (linksIndex = 0; linksIndex < links.length; ++linksIndex) {
join.push([{source:links[linksIndex].source,target:links[linksIndex].target, x1:0, y1:0, x2:0, y2:0}]);
};
for (joinIndex = 0; joinIndex < join.length; ++joinIndex) {
// console.log("join in loop");console.log(join); // ok array of objects
// console.log("join[joinIndex]");console.log(join[joinIndex]); // on object
console.log("join[joinIndex].source");console.log(join[joinIndex].source); // undefined why?
for (nodesIndex = 0; nodesIndex < nodes.length; ++nodesIndex) {
if (nodes[nodesIndex].name == join[joinIndex].source) {
join[joinIndex].x1=nodes[nodesIndex].x; // match source
join[joinIndex].y1=nodes[nodesIndex].y; // match source
};
if (nodes[nodesIndex].name == join[joinIndex].target) {
join[joinIndex].x2=nodes[nodesIndex].x; // match target
join[joinIndex].y2=nodes[nodesIndex].y; // match target
} ;
}
}