`

【转】判断JS对象是否拥有某属性

 
阅读更多

两种方式,但稍有区别

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对象是否拥有某属性如何判断

    JS对象是否拥有某属性 两种方式,但稍有区别 1,in 运算符 var obj = {name:'jack'}; alert('name' in obj); // --> true alert('toString' in obj); // --> true 可看到无论是name,还是...

    判断JS对象是否拥有某属性的方法推荐

    在给定的文件中,推荐了两种不同的方法来判断一个JavaScript对象是否拥有某属性。 第一种方法是使用`in`运算符。`in`运算符可以检查对象是否具有特定的属性,无论该属性是该对象自身的属性,还是其原型链上的属性。...

    判断JS对象是否拥有某种属性的两种方式

    本文主要介绍了两种判断JS对象是否拥有某种属性的方法,它们分别是使用in运算符和hasOwnProperty方法。 首先,我们来看一下in运算符的使用。in运算符可以检查指定的属性是否存在于某个对象或其原型链中。例如,如果...

    JS如何判断对象是否包含某个属性

    最后,还可以通过与`undefined`进行比较来判断属性是否存在。这种方法检查属性值是否等于`undefined`。需要注意的是,如果属性存在但是值被赋予了`undefined`,这种方法就会返回错误的结果。使用示例如下: ```...

    JavaScript 判断对象中是否有某属性的常用方法

    在JavaScript中,判断对象是否拥有特定属性是常见的需求。...理解这些方法并灵活运用,可以帮助我们更有效地处理JavaScript中的对象属性判断。希望本文对你有所帮助,如有疑问欢迎提问。感谢对网站的支持!

    判断js对象是否拥有某一个属性的js代码

    在JavaScript编程中,经常需要判断一个对象是否拥有某个特定属性。正确判断对象属性的存在对于编写健壮的代码非常重要。对象的属性分为“自有属性”和“继承属性”,自有属性是直接存在于对象本身,而继承属性是从...

    JavaScript如何判断对象有某属性

    在JavaScript中,判断对象是否拥有某个属性是编程中常见的需求,尤其在处理动态数据和对象交互时。本文将详细介绍四种常见的方法,以便于在不同情况下选择合适的方式。 1. **点运算符 (.)** 和 **方括号运算符 ([ ]...

    javascript检测对象中是否存在某个属性判断方法小结

    `hasOwnProperty()`是JavaScript对象的一个内置方法,它用于判断对象是否具有指定的自有属性,不考虑继承属性。例如: ```javascript var o = {x: 1}; o.hasOwnProperty("x"); // true,自有属性中有x o....

    JS对象及属性参考手册

    4. 静态属性与实例属性:类(函数)对象可以通过 `prototype` 创建静态属性,实例对象则拥有自己的一份副本。 5. 属性特性:JS对象有读写、只读、不存在等属性特性,可以通过 `Object.getOwnPropertyDescriptor()` ...

    js代码-判断对象数组是否含有某个对象

    // 检查所有目标属性是否与当前对象属性相等 for (let key in target) { if (obj[key] !== target[key]) { return false; } } return true; }); } ``` 这个函数会检查数组中的每个对象,如果所有目标属性...

    JS判断是否为JSON对象及是否存在某字段的方法(推荐)

    在JavaScript(JS)编程中,有时我们需要验证接收到的数据是否为JSON对象,并检查该对象是否包含特定的字段。本文将详细介绍两种关键方法:判断数据是否为JSON对象以及检测JSON对象中是否存在某个字段。 首先,我们...

    js 判断文件时候为空

    上述代码首先获取了用户选择的第一个文件,然后通过比较其size属性是否为0来判断文件是否为空。如果size为0,则表示文件为空;否则,文件含有数据,非空。 然而,需要注意的是,这种方式并不能确保100%的准确性,...

    js判断数组是否相等的方法

    在JavaScript中,判断两个数组是否相等是一个常见的需求,尤其在处理数据比较或者验证时。根据标题和描述,我们可以区分两种不同的场景: 1. **数组完全相等**:在这种情况下,不仅要求数组中的元素相同,而且元素...

    JavaScript中判断对象类型的几种方法总结

    每个JavaScript对象都有一个`constructor`属性,它指向创建该对象的构造函数。这可以用来判断未知对象的类型。例如,通过比较`arr.constructor === Array`,可以确定`arr`是否为数组。然而,`constructor`属性在...

Global site tag (gtag.js) - Google Analytics