Ich versuche, ein verschachteltes assoziatives Array zu iterieren.
Nach jeder Iteration ich auch einen undefined
Wert:Iteration verschachteltes assoziatives Array
testarr = [];
testarr["key1"] = [];
testarr["key2"] = [];
testarr["key1"].push("val1");
testarr["key1"].push("val2");
testarr["key1"].push("val3");
testarr["key2"].push("val4");
testarr["key2"].push("val5");
testarr["key2"].push("val6");
for (var key in testarr) {
console.log("---" + key + "---")
for (var key2 in key) {
console.log(testarr[key][key2])
}
}
Ausgang:
---key1---
val1
val2
val3
undefined
---key2---
val4
val5
val6
undefined
Wo es her?
Es ist nicht * for..in * zu verwenden, empfehlen Sie ein Array wie die Reihenfolge iterieren, in denen Eigenschaften zurückgegeben werden kann nicht sein, was erwarten und Sie können aufzählbare Eigenschaften finden, die keine eigenen Eigenschaften sind. Auch wenn Arrays Objekte sind, wird erwartet, dass sie mit numerischen Schlüsseln und nicht alphabetisch verwendet werden. Ein Objekt scheint in diesem Fall für * testarr * geeigneter zu sein. – RobG
@RobG Ist das ein Array oder ein Objekt? – John
@ John- * testarr * ist ein Array. – RobG