小编典典

JavaScript中如何判断一个对象是否具有给定的属性

all

无论 的值如何,如何确定对象是否具有x已定义的属性?y``x.y

我目前正在使用

if (typeof(x.y) !== 'undefined')

但这似乎有点笨拙。有没有更好的办法?


阅读 72

收藏
2022-04-01

共1个答案

小编典典

对象具有属性:

如果您正在测试对象本身(不是其原型链的一部分)上的属性,您可以使用.hasOwnProperty()

if (x.hasOwnProperty('y')) { 
  // ......
}

对象或其原​​型有一个属性:

您也可以使用in运算符来测试继承的属性。

if ('y' in x) {
  // ......
}
2022-04-01