JS中如何判断传过来的JSON数据中是否存在某字段
如何判断传过来的JSON数据中,某个字段是否存在,
1.obj["key"]!=undefined
这种有缺陷,如果这个key定义了,并且就是很2的赋值为undefined,那么这句就会出问题了。
2.!("key"inobj)
3.obj.hasOwnProperty("key")
这两种方法就比较好了,推荐使用。
答案原文:
Actually,checkingforundefined-nessisnotanaccuratewayoftestingwhetherakeyexists.Whatifthekeyexistsbutthevalueisactuallyundefined?
varobj={key:undefined};
obj["key"]!=undefined//false,butthekeyexists!
Youshouldinsteadusetheinoperator:
"key"inobj//true,regardlessoftheactualvalue
Ifyouwanttocheckifakeydoesn'texist,remembertouseparenthesis:
!("key"inobj)//trueif"key"doesn'texistinobject
!"key"inobj//ERROR!Equivalentto"falseinobj"
Or,ifyouwanttoparticularlytestforpropertiesoftheobjectinstance(andnotinheritedproperties),usehasOwnProperty:
obj.hasOwnProperty("key")//true
热门推荐
1 训练狗狗憋尿
2 狗狗追踪训练
3 狗狗训练要多少钱
5 深圳狗狗训练
6 训练狗狗唤回
7 狗狗叫怎么训练
8 狗狗训练班
10 狗狗社会化训练
11 狗狗叫回训练
12 广州狗狗训练学校
13 狗狗训练躺下
14 狗狗随行训练
15 训练狗狗巡回
16 狗狗要怎么训练
17 狗狗喂食训练
18 训练狗狗躺下