ES7 中使用 Object.getOwnPropertyNames() 获取对象属性名的方法

ES7 中使用 Object.getOwnPropertyNames() 获取对象属性名的方法

在前端开发中,我们经常需要获取对象的属性名,以便进行相应的操作。而在 ES7 中,我们可以使用 Object.getOwnPropertyNames() 方法来获取对象的属性名。

Object.getOwnPropertyNames() 方法返回一个数组,其中包含了指定对象的所有属性(包括非可枚举属性),但不包括其原型链上的属性。

语法:

Object.getOwnPropertyNames(obj)

其中,obj 为要获取属性名的对象。

下面是一个示例代码:

----- --- - -
  ----- ------
  ---- --
-

----- ------------- - --------------------------------

--------------------------- -- -------- ------

在上面的代码中,我们定义了一个对象 obj,然后使用 Object.getOwnPropertyNames() 方法获取了该对象的属性名,并将结果保存在 propertyNames 变量中。最后,我们将结果打印到控制台中。

除了获取对象的属性名外,Object.getOwnPropertyNames() 方法还可以用于检查对象是否具有某个属性,例如:

----- --- - -
  ----- ------
  ---- --
-

----- ------- - -------------------------------------------------

--------------------- -- ----

在上面的代码中,我们使用 Object.getOwnPropertyNames() 方法检查了对象 obj 是否具有属性名为 name 的属性,并将结果保存在 hasName 变量中。最后,我们将结果打印到控制台中。

需要注意的是,Object.getOwnPropertyNames() 方法只能获取对象自身的属性名,而不能获取其原型链上的属性名。如果需要获取原型链上的属性名,可以使用 Object.keys() 方法或 for...in 循环。

总结:

ES7 中使用 Object.getOwnPropertyNames() 方法可以方便地获取对象的属性名,从而进行相应的操作。同时,它还可以用于检查对象是否具有某个属性。但需要注意的是,它只能获取对象自身的属性名,不能获取其原型链上的属性名。

来源:JavaScript中文网 ,转载请注明来源 本文地址:https://www.javascriptcn.com/post/65f2b5162b3ccec22fb4b99f