in操作符会检查属性是否在对象及其[[Prototype]]原型链中,如果存在就返回true,反之返回false
var myObject={
a:2
}
('a' in myObject); // true
('b' in myObject); // false
注:
看起来in操作符像检查容器内是否有某个值,实际上检查的是某是属性名是否存在。容易踩的坑会出现在数组中,如下:
4 in [2,4,6] // false
因为数组[2,4,6]中包含的属性名是0,1,2,没有4
in操作符
最新推荐文章于 2024-12-08 09:21:17 发布