gpt4 book ai didi

javascript - 如何通过索引访问JSON对象中的字段

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

我知道这不是最好的方法,但我别无选择:(

我必须通过索引访问 JSONObject 中的项目。访问对象的标准方法是编写 this[objectName]this.objectName。我还找到了一种获取 json 对象中所有字段的方法:

(for (var key in p) { 
if (p.hasOwnProperty(key)) {
alert(key + " -> " + p[key]);
}
}

(来源:Loop through Json object)。

但是,无法通过索引直接访问 JSON 字段。我现在看到的唯一方法是创建一个数组,使用上面的函数,通过索引获取字段名,然后通过字段名获取值。

据我所知,p(在我们的例子中,JSON 文件必须是一个可迭代的数组,否则 foreach 循环将不起作用。我如何直接访问这个数组?或者它是某种未排序的列表?

最佳答案

一个 JSON 对象更像是一个键值映射;所以,是的,它是未分类的。绕过的唯一方法是您已经提到的索引->属性名称映射:

var keysbyindex = Object.keys(object);
for (var i=0; i<keysbyindex.length; i++)
alert(object[keysbyindex[i]]);

但是为什么需要这些索引呢?未排序的映射也没有像数组那样的长度属性。为什么不使用 for-in-loop

var counter = 0; // if you need it
for (var key in object) {
alert(object[key])
counter++;
}

?如果你有一个解析过的 JSON 对象,即一个普通的 JS 对象,你就不必担心可枚举的原型(prototype)属性。

关于javascript - 如何通过索引访问JSON对象中的字段,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/9768150/

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