gpt4 book ai didi

JavaScript for in 循环,但反过来?

转载 作者:塔克拉玛干 更新时间:2023-11-02 21:52:54 25 4
gpt4 key购买 nike

获取具有 4 个属性的 JavaScript 对象:

function Object() {
this.prop1;
this.prop2;
this.prop3;
this.prop4;
}

var obj = new Object();

我使用 for(in) 循环来检查每个属性,因为我不知道属性的编号或名称:

for(property in obj) {
var prop = obj[property];
}

但是我想处理从最后一个开始的属性(本例中为 prop4)。我想我想要一个反向循环。

我该怎么做?

谢谢, jack

添加:我指的对象是从 JSON.parse 返回的对象。这些属性似乎始终有序。没有 keys() 方法。

最佳答案

for (x in y) 不会以任何特定顺序处理属性,因此您不能指望任何所需的顺序。

如果您需要按特定顺序处理属性,则需要将所有属性放入一个数组中,对数组进行适当排序,然后按所需顺序使用这些键。

使用 ES5(或 ES5 垫片),您可以将所有属性放入一个数组中:

var keys = Object.keys(obj);

然后您可以按照标准词汇顺序或使用您自己的自定义函数对它们进行排序:

keys.sort(fn);

然后,您可以按照您想要的顺序访问它们:

for (var i = 0; i < keys.length; i++) {
// process obj[keys[i]]
}

关于JavaScript for in 循环,但反过来?,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/9762402/

25 4 0
Copyright 2021 - 2024 cfsdn All Rights Reserved 蜀ICP备2022000587号
广告合作:1813099741@qq.com 6ren.com