1
我是JavaScript新手,我不知道爲什麼這個代碼沒有輸出的原因。爲什麼我不能遍歷這個數組?
function printArray(a) {
for (var key in a) {
console.log(a[key]);
}
}
var a = new Array(10);
printArray(a);
有什麼不對嗎?
我是JavaScript新手,我不知道爲什麼這個代碼沒有輸出的原因。爲什麼我不能遍歷這個數組?
function printArray(a) {
for (var key in a) {
console.log(a[key]);
}
}
var a = new Array(10);
printArray(a);
有什麼不對嗎?
在空插槽沒有可枚舉的屬性。另外,您幾乎從不想使用for (in)
循環來檢查數組的索引。
您應該使用常規的for
循環或Array.prototype.forEach()
(如果該數組有值,當然)。
function printArray(a) {
for (var i = 0; i < a.length; i++) {
console.log(a[i]);
}
}
// or
function printArray(a) {
a.forEach(function(i) {
console.log(i);
});
}
記住Array.prototype.forEach()
可能不會在您的所有目標平臺的支持。
'for'循環是要走的路。 '.forEach()'不會爲實際不存在的成員調用回調。它跳過了那些。 – 2014-11-24 02:09:13
是的,'for loop'是最好的解決方案。 – BlackMamba 2014-11-24 02:18:17
最好的解決方案是在你的數組中有元素。 – Sacho 2014-11-24 02:29:28