宾语:

obj = {
    "expired":93,
    "old3":93,
    "old2":87,
    "old1":100,
    "fresh":150
}


我如何在对象中找到“ old1”(所以3)的索引?

如果要设置其值,我将如何通过其索引引用“ old1”?

最佳答案

您不应该这样做,不能保证对象属性的顺序。

如果要使用数字索引,请改用Array。

如果使用所有字符串键(而不是数字格式),则大多数浏览器将遵循对象表达式的顺序,但这不能保证。

而且,如果您包含数字或数字格式字符串作为键,则该顺序将不是对象表达式的顺序。看到:

var obj = {
    "expired":93,
    "old3":93,
    "old2":87,
    "old1":100,
    "1": 111,
    "fresh":150
};

for (var key in obj) {
    console.log(key + ' : ' + obj[key]);
}


输出:

1 : 111
expired : 93
old3 : 93
old2 : 87
old1 : 100
fresh : 150

关于javascript - 通过索引获取值和引用对象属性,我们在Stack Overflow上找到一个类似的问题:https://stackoverflow.com/questions/12505298/

10-16 14:11