gpt4 book ai didi

javascript - jQuery - 如何从嵌套 JSON 获取 JSON 数组名称

转载 作者:行者123 更新时间:2023-11-28 07:33:40 26 4
gpt4 key购买 nike

我是 jQuery 和 JSON 的新手。我希望你能帮助我完成我的小任务。我有以下 JSON 对象结构:

{
"recipe": {
"myREAL":0,
"mySTRING":"STRING variable",
"myUDINT":0,
"mybool":0,
"ingNumber":[0,0,0,0,0],
"ingMinimumWeight":[0,0,0,0,0],
"ingNominalWeight":[0,0,0,0,0]
}
}

我想获取数组名称的名称,而不是只获取索引和索引的值。

到目前为止我的输出:

 Key: myREAL Value: 0
Key: mySTRING Value: STRING variable
Key: myUDINT Value: 0
Key: mybool Value: 0
Key: 0 Value: 0
Key: 1 Value: 0
Key: 2 Value: 0
Key: 3 Value: 0
Key: 4 Value: 0
...

我对这样的结构感兴趣:

 Key: myREAL Value: 0
Key: mySTRING Value: STRING variable
Key: myUDINT Value: 0
Key: mybool Value: 0
ingNumber:
Key: 0 Value: 0
Key: 1 Value: 0
Key: 2 Value: 0
Key: 3 Value: 0
Key: 4 Value: 0
ingMinimumWeight:
...

我想在 Jquery 中执行此操作,而不指定数组变量的名称。

我的 jQuery 代码:

function iter(obj) {
for (var key in obj) {
if (typeof (obj[key]) == 'object') {
iter(obj[key]);
} else {
content = " Key: " + key + " Value: " + obj[key] + '\n';
var box = $("#myArea");
box.val(box.val() + content);
}
}
}

最佳答案

根据您想要的输出,您需要在再次递归调用该函数之前将内容添加到框中。

function iter(obj) {
var box = $("#myArea");
for (var key in obj) {
if (typeof (obj[key]) == 'object') {
content = key+ " : \n";
box.val(box.val() + content);
iter(obj[key]);
} else {
content = " Key: " + key + " Value: " + obj[key] + '\n';
box.val(box.val() + content);
}
}
}

<强> DEMO

关于javascript - jQuery - 如何从嵌套 JSON 获取 JSON 数组名称,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/28833538/

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