从Javascript中的JSON对象中查找键值

Finding Key value from JSON Object in Javascript

本文关键字:查找 键值 对象 JSON Javascript 中的      更新时间:2023-09-26

我的javascript代码中有一个JSON对象,如下所示:

{"0" : "Jul 09, 2012 05:05 PM", "3" : "Jul 09, 2012 05:08 PM"}

我已经使用解码了这个JSON

var jsonObj = eval('(' + {/literal}{$json}{literal} + ')');

我可以使用访问值

jsonObj[i]

但如果我访问jsonObj[2],这会给我一个错误,因为它不在我的json中。

因此,我希望有一种方法来访问JSON的第一部分,即关键部分。以便我将它们存储在JS中的一个数组中,并循环遍历它们。

eval是邪恶的。无论如何,如果您想循环浏览json的属性("keys"),您可以执行
for(key in jsonObj) {
   if(jsonObj.hasOwnProperty(key)) {
     //do something with the values
     // jsonObj[key] 
   }
}
if (jsonObj.hasOwnProperty('2')) {
}

现代浏览器有"static"方法Object.keys()。旧浏览器有一个填充程序。然后,您可以对返回的键数组进行循环,如果您使用的是大多数框架,则可以使用.indexOf()或.inArray()。