Javascript 如何检查json字符串的属性?

Javascript 如何检查json字符串的属性?,javascript,json,Javascript,Json,我有一个JSON字符串数组。考虑数组的第一个元素有4个属性, {a:姓名,b:地址,c:dob,d:国家} 第二个元素只有3个属性,没有“c”属性。 在遍历数组时,如果属性不存在,我应该将其设置为默认值。我用过,(让‘c’作为‘评级’) 它适用于具有“rating”属性的元素。但对于没有rating属性的元素,我会得到一个错误,即“找不到”rating“ 是否有其他方法可以确定属性是否存在?不应产生错误“船长”。hasOwnProperty(“紧身裤”)计算结果为false。有一个完整的测试用例

我有一个JSON字符串数组。考虑数组的第一个元素有4个属性, {a:姓名,b:地址,c:dob,d:国家}

第二个元素只有3个属性,没有“c”属性。 在遍历数组时,如果属性不存在,我应该将其设置为默认值。我用过,(让‘c’作为‘评级’)

它适用于具有“rating”属性的元素。但对于没有rating属性的元素,我会得到一个错误,即“找不到”rating“


是否有其他方法可以确定属性是否存在?

不应产生错误<代码>“船长”。hasOwnProperty(“紧身裤”)计算结果为false。有一个完整的测试用例来演示“找不到…”错误吗?看看这个问题,以获得跨浏览器解决方案@subirkumarsao给出了非常好的完整答案,但是。。
hasOwnProperty
在哪个浏览器[任何问题]不工作?它是在ECMAScript第三版中定义的,甚至IE6也支持它。答案中提到:所有现代浏览器都支持它。(旧版本的Safari-2.0.1和更旧版本中缺少了它,但这些版本的浏览器很少再使用了。)
if(!results.hasOwnProperty('rating'))
  results.rating = 1;