ทำไมลูป for-each loop ไม่ทำซ้ำกับอ็อบเจกต์อาเรย์แบบ JavaScript ของฉัน
// defining an array
var array = [];
// assigning values to corresponding keys
array["Main"] = "Main page";
array["Guide"] = "Guide page";
array["Articles"] = "Articles page";
array["Forum"] = "Forum board";
// expected: loop over every item,
// yet it logs only "last" assigned value - "Forum"
for (var i = 0; i < array.length; i++) {
console.log(array[i]);
}
แก้ไข: jQuery each()
อาจมีประโยชน์: https://api.jquery.com/jQuery.each/
associative arrays
ใน JS: มันเป็น Array ธรรมดาหรือ Object ไม่มีสิ่งใดขัดขวางการเพิ่มคุณสมบัติที่ไม่ใช่ตัวเลขArray
แต่ไม่ได้ทำให้คุณสมบัติassociative
โดยเฉพาะอย่างยิ่งlength
ไม่นับคุณสมบัติเหล่านี้โดยอัตโนมัติ