📜  JavaScript | Reflect.getOwnPropertyDescriptor() 方法

📅  最后修改于: 2022-05-13 01:56:42.257000             🧑  作者: Mango

JavaScript | Reflect.getOwnPropertyDescriptor() 方法

Javascript 中的 Reflect.getOwnPropertyDescriptor() 方法用于获取对象的描述符。它与 Object.getOwnPropertyDescriptor 方法相同,但非对象目标的处理方式不同。
句法:

Reflect.getOwnPropertyDescriptor(obj, Key) 

参数:此方法接受上面提到的两个参数,如下所述:

  • Obj:此参数保存目标对象并查找属性。
  • Key:此参数用于获取属性名称的自己的属性描述符。

返回值:该方法返回属性描述符对象,如果目标对象不存在则返回 undefined 。
异常:当目标不是对象时,TypeError 是作为结果给出的异常。
下面的示例说明了 JavaScript 中的 Reflect.getOwnPropertyDescriptor() 方法:
示例 1:

javascript


javascript


javascript


输出:

"geeks"
undefined
true
"Javascript"
undefined
true
true

示例 2:

javascript


输出: ]

undefined
true
[object Object] {
  configurable: true,
  enumerable: true,
  value: "NULL",
  writable: true
}
[object Object] {
  configurable: true,
  enumerable: true,
  value: "hello",
  writable: true
}
undefined
[object Object] {
  configurable: false,
  enumerable: false,
  value: 0,
  writable: true
}

示例 3:调用非对象并发生错误。

javascript


输出:

Error: Reflect.getOwnPropertyDescriptor called on non-object

支持的浏览器: JavaScript Reflect.getOwnPropertyDescriptor() 方法支持的浏览器如下:

  • 谷歌浏览器 49 及更高版本
  • 边缘 12 及以上
  • 火狐 42 及以上
  • Opera 36 及以上
  • Safari 10 及更高版本

参考: https://developer.mozilla.org/en-US/docs/Web/JavaScript/Reference/Global_Objects/Object/getOwnPropertyDescriptor