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
热门推荐
10 祝孙辈生日祝福语简短
11 恋人跨年祝福语大全简短
12 考大学敬酒简短祝福语
13 开工投产大吉祝福语 简短
14 偶然结婚祝福语朋友简短
15 感谢学长学姐祝福语简短
16 戏精的祝福语简短
17 我要结婚祝福语简短
18 婚前女儿生日祝福语简短