📜  JavaScript Reflect ownowns()方法(1)

📅  最后修改于: 2023-12-03 15:16:06.668000             🧑  作者: Mango

JavaScript Reflect ownKeys() 方法

Reflect.ownKeys() 方法是一个静态方法,用于返回一个包含指定对象自身属性键名的数组,包括不可枚举属性和 Symbol 类型的属性。

语法
Reflect.ownKeys(target)
参数
  • target:目标对象。
返回值

一个包含目标对象自身属性键名的数组。

示例
const obj = {
  name: 'John',
  age: 30,
  [Symbol('id')]: '123'
};

const keys = Reflect.ownKeys(obj);
console.log(keys); // [ 'name', 'age', Symbol(id) ]

上面的代码定义了一个对象 obj ,并使用 Reflect.ownKeys() 方法获取对象的自身属性键名,包括 Symbol 属性。

注意事项
  • Reflect.ownKeys() 方法与 Object.keys()、Object.getOwnPropertyNames() 等方法的区别在于,它可以返回 Symbol 属性。
  • 如果传入的参数不是对象,将会抛出一个 TypeError 异常。
  • 如果传入的对象存在属性访问器,Reflect.ownKeys() 会返回访问器属性的键名,而不是它们对应的值属性。