JS中数组和对象是等同的,判断一个key是否存在于数组中(或对象是否包含某个属性),我们可能马上想到的是使用ary[key] == undefined来判断key是否存在这个数组或者是对象中,但是这样判断是有问题的,因为可能存在ary = {key:undefined};

正确的方法应该为:

ary.hasOwnProperty(key); 或 obj.hasOwnProperty(key);

另外数组或对象进行循环的时候应该使用:

for(var key in ary) { console.log(key+" : "+ary[key]); }

Logo

基于 Vue 的企业级 UI 组件库和中后台系统解决方案,为数万开发者服务。

更多推荐