两种方式,但稍有区别
1,in 运算符
1
2
3
|
var obj = {name: 'jack' };
alert( 'name' in obj); // --> true
alert( 'toString' in obj); // --> true
|
可看到无论是name,还是原形链上的toString,都能检测到返回true。
2,hasOwnProperty 方法
1
2
3
|
var obj = {name: 'jack' };
obj.hasOwnProperty( 'name' ); // --> true
obj.hasOwnProperty( 'toString' ); // --> false
|
原型链上继承过来的属性无法通过hasOwnProperty检测到,返回false。
需注意的是,虽然in能检测到原型链的属性,但for in通常却不行。
当然重写原型后for in在IE9/Firefox/Safari/Chrome/Opera下是可见的。见:for in的缺陷
相关推荐
JS对象是否拥有某属性 两种方式,但稍有区别 1,in 运算符 var obj = {name:'jack'}; alert('name' in obj); // --> true alert('toString' in obj); // --> true 可看到无论是name,还是...
下面小编就为大家了一篇判断JS对象是否拥有某属性的方法推荐。小编觉得挺不错的,现在分享给大家,也给大家做个参考。一起跟随小编过来看看吧
主要介绍了判断JS对象是否拥有某种属性的两种方式,有需要的朋友可以参考一下
判断对象中是否有某属性的常见方式总结,不同的场景要使用不同的方式。这篇文章给大家介绍了JavaScript 判断对象中是否有某属性的常用方法,非常不错,具有一定的参考借鉴价值,需要的朋友参考下吧
js对象是否拥有某一个属性的判断方法有很多,下面为大家介绍个比较实用的技巧,希望对大家有所帮助
主要介绍了JS如何判断对象是否包含某个属性,文中通过示例代码介绍的非常详细,对大家的学习或者工作具有一定的参考学习价值,需要的朋友可以参考下
判断对象中是否有某属性的常见方式总结,不同的场景要使用不同的方式。 一、点( . )或者方括号( [ ] ) 通过点或者方括号可以获取对象的属性值,如果对象上不存在该属性,则会返回undefined。当然,这里的“不存在...
使用in关键字该方法可以判断对象的自有属性和继承来的属性是否存在。 代码如下: var o={x:1}; “x” in o; //true,自有属性存在 “y” in o; //false “toString” in o; //true,是一个继承属性 2.使用对象的...
本文实例讲述了JS判断两个数组或对象是否相同的方法。分享给大家供大家参考,具体如下: JS 判断两个数组是否相同 要判断2个数组是否相同,首先要把数组进行排序,然后转换成字符串进行比较。 JSON.stringify([1,2,...
要判断一个对象是否DOM对象,首先想到的无非就是它是否具有DOM对象的各种属性或特征,比如是否有nodeType属性,有tagName属性,等等。判断的特征越多,也就越可靠,因为毕竟我们自定义的js对象也可以有那些属性。...
我们知道,JavaScript中检测对象类型的运算符有:typeof、instanceof,还有对象的constructor属性: 1) typeof 运算符 typeof 是一元运算符,返回结果是一个说明运算数类型的字符串。如:”number”,”string”,”...
null表示一个空对象指针,typeof操作会返回”object”。 一般不显式的把变量的值设置为undefined,但null相反,对于将要保存对象的变量,应明确的让该变量保存null值。 var bj; alert(bj); //"undefined" ...
本文实例讲述了JS判断两个对象内容是否相等的方法。分享给大家供大家参考,具体如下: 我们知道,如果两个对象即使内容,JavaScript也会判断它们不相等。但是有时候,我们仅仅需要判断两个对象的内容是否相等。那么...