js判断数组json中是否含有某个key值

诸位大佬,可否扫下右下方参与下“支付宝”红包活动!小弟万分感谢!

js原生判断json中是否存在特定key值

关于这个问题我们就不得不了解hasOwnProperty方法:

hasOwnProperty() 方法会返回一个布尔值,指示对象自身属性中是否具有指定的属性(也就是是否有指定的键)

描述:

所有继承了 Object 的对象都会继承到 hasOwnProperty 方法。这个方法可以用来检测一个对象是否含有特定的自身属性;和 in 运算符不同,该方法会忽略掉那些从原型链上继承到的属性。

案例数据格式:

var jsonData = [
{id:1,value:'六月初博客'},
{id:2,value:'六月初博客站',child:'子集'},
{id:3,value:'六月初个人博客'}
]

如果我们要判断上方的json中是否含有child要如何处理呢?

关键代码:

json.hasOwnProperty("child")

如果存在则返回true,否则返回false

完整实例代码:

<!DOCTYPE html>
<html>
<head>
<meta charset="utf-8">
<title></title>
</head>
<body>
<script>
var jsonData = [
{id:1,value:'六月初博客'},
{id:2,value:'六月初博客站',child:'子集'},
{id:3,value:'六月初个人博客'}
]
//数组json判断
for(var i=0;i<jsonData.length;i++){
console.log(jsonData[i].hasOwnProperty("child"))
}
//返回结果 false true false
//单个json判断
var json = {id:4,value:"六月初博客站"}
console.log(json.hasOwnProperty("child")) //返回结构 false </script>
</body>
</html>

代码扩展:

通过hasOwnProperty方法我们可以得到true值和false值,这里我们就可以通过条件判断if来执行对应的操作,如删除、修改等!