我希望在迭代的帮助下获得JSON对象键及其元素的各个值
我的json会像这样:-
var a=
{
"HYDROGEN": {
"atomic_number": 1,
"abbreviation": "H",
"atomic_weight": 1.008
},
"HELIUM": {
"atomic_number": 2,
"abbreviation": "He",
"atomic_weight": 4.003
}}
您可以动态地检索{a}对象的[key]和[value],如下所示:
for (var sIndexKey in a) {
if (a.hasOwnProperty(sIndexKey) === true) {
var oJsonData = a[sIndexKey]; // in this case the 2 objects inside your {a} object
var sObjectKeys = Object.keys(oJsonData); //e.g atomic_number / abbreviation / atomic_weight
for (var iIndex = 0; iIndex < sObjectKeys.length; iIndex++) {
var sJsonKeys = sObjectKeys[iIndex];
var sJsonValues = oJsonData[sJsonKeys];
console.log(sJsonKeys);
console.log(sJsonValues);
}
}
}
这里有一个JSFIDLE供进一步参考:http://jsfiddle.net/q37ehka9/
希望这对你的案子有帮助
var a=
{
"HYDROGEN": {
"atomic_number": 1,
"abbreviation": "H",
"atomic_weight": 1.008
},
"HELIUM": {
"atomic_number": 2,
"abbreviation": "He",
"atomic_weight": 4.003
},
"HELIUM": {
"atomic_number": 2,
"abbreviation": "He",
"atomic_weight": 4.003
}}
for (i=0;i<1;i++)
{
console.log(Object.keys(a)[i])
console.log(a[Object.keys(a)[i]].atomic_number)
console.log(a[Object.keys(a)[i]].atomic_weight)
console.log(a[Object.keys(a)[i]].abbreviation)
}
问题内容: 我是JSON的新手。因此,如果这是一个非常基本的疑问,请不要责骂我。我有一个JSON对象参考,我想获取Key(对象只有一个“键值对”)。如何在Java中获得它? 问题答案: 您可以用来获取所有密钥。然后,您可以遍历密钥以从中获得第一个密钥,例如:
问题内容: 上面的示例json数组,如何获取204、203和202?谢谢 我试过了: 问题答案: 上面的示例json数组,如何获取204、203和202? 不,当前的String 代替。您应该使用JSONObject获取Iterator 。keys()如果内部JSONObject键动态为:
问题内容: 我正在返回一个json,如下所示 我正在尝试获取每个元素的键和值: 我正在戒备。为什么?我尝试过,我尝试循环但没有成功。 问题答案: 检查这个jsfiddle 从 jQuery 3.0开始 ,不推荐使用$ .parseJSON。要解析JSON字符串,请改用本机JSON.parse方法。 来源:http://api.jquery.com/jquery.parsejson/
你好,我来自从URL获取JSON对象 我试着去买一顶帽子- 有人能告诉我我做错了什么吗?
我有一个如下面示例所示的Json主体。我需要从一个键中提取值,该键在数组中有另一个具有特定值的键。我在传递一个JSONode,其中包含消息的细节组件中的所有内容,我可以很容易地从每个级别提取,但是,我在处理数组时遇到了困难。 在本例中,我需要从数组中的对象中提取值“value”(警察/消防/事故报告),该对象具有一个键/值对“name”:“documenttitle”。我知道这是一个JSONArr
下面看似简单的代码抛出以下错误 回溯(最近一次调用last):文件“search.py”,第48行,pageToken=page_token)。方法中的第716行执行()文件“C:\Users\Choi\AppData\Local\Programs\Python\Python37\lib\site packages\GoogleAppClient\discovery.py” raise TypeE