對象不是數組,並且不能訪問數組原型。你可以遍歷這些屬性。
for(var key in data){
console.log(key) //or data[key] if you want the values
}
關於下面的jQuery註釋,看起來他們在內部爲他們的「每個」函數使用循環。從source:
// args is for internal usage only
each: function(obj, callback, args) {
var value,
i = 0,
length = obj.length,
isArray = isArraylike(obj);
if (args) {
if (isArray) {
for (; i < length; i++) {
value = callback.apply(obj[ i ], args);
if (value === false) {
break;
}
}
} else {
for (i in obj) {
value = callback.apply(obj[ i ], args);
if (value === false) {
break;
}
}
}
// A special, fast, case for the most common use of each
} else {
if (isArray) {
for (; i < length; i++) {
value = callback.call(obj[ i ], i, obj[ i ]);
if (value === false) {
break;
}
}
} else {
for (i in obj) {
value = callback.call(obj[ i ], i, obj[ i ]);
if (value === false) {
break;
}
}
}
}
return obj;
},
我會承擔的 「爲什麼呢?」是因爲一個對象不是一個數組。您的匿名函數中的參數中也有語法錯誤。 – 2013-05-13 15:59:45