如何遍历这些项目?
var userCache = {};
userCache['john'] = {ID: 234, name: 'john', ... };
userCache['mary'] = {ID: 567, name: 'mary', ... };
userCache['douglas'] = {ID: 42, name: 'douglas', ... };
length属性不起作用?
userCache.length
最佳答案
您可以如下循环遍历john
对象的属性(mary
,douglas
和userCache
):
for (var prop in userCache) {
if (userCache.hasOwnProperty(prop)) {
// You will get each key of the object in "prop".
// Therefore to access your items you should be using:
// userCache[prop].name;
// userCache[prop].ID;
// ...
}
}
重要的是使用
hasOwnProperty()
方法来确定对象是否具有指定的属性作为直接属性,而不是继承自对象的原型链。