JavaScript : Check if object has properties

标签 javascript object properties

这里有几个答案如何检查对象中是否存在属性。

我一直在用

if(myObj.hasOwnProperty('propName'))

但我想知道是否有什么区别

if('propName' in myObj){

最佳答案

它们几乎是相等的,不同的是hasOwnProperty不检查原型(prototype)链,而in则检查。

一个例子

var test = function() {}

test.prototype.newProp = function() {}

var instance = new test();

instance.hasOwnProperty('newProp'); // false
'newProp' in instance // true

FIDDLE

如上所述,Object.hasOwnProperty 仅返回“自己的属性”,即直接添加的属性,而不是添加到原型(prototype) 的属性>.

关于JavaScript : Check if object has properties,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/22728508/

相关文章:

javascript - 删除另一个函数中的对象

javascript - 对象实践中超出了最大调用堆栈大小

Spring Boot如何读取jar外的属性文件

javascript - 在不同的 div 中插入图像

javascript - 在 Jade 中使用 JQuery 条件不起作用

javascript - `$getjson` 从 Django 到 javascript 不起作用

javascript - 我们如何在 JavaScript 移动应用程序中记录主干历史堆栈列表?

javascript - Lodash:将具有重复值的数组转换为具有重复出现次数的对象

c# - 一种捕获对象属性变化的方法

javamail : how to have two set of (System. getProperties())