Object构造函数的方法 之Object.getOwnPropertyDescriptor()

摘要:返回指定对象上一个自由属性对应的属性描述符。(自有属性指的是直接赋予该对象的属性,不需要从原型链上进行查找的属性)
Object.getOwnPropertyDescriptor ( obj, prop )
返回指定对象上一个自由属性对应的属性描述符。(自有属性指的是直接赋予该对象的属性,不需要从原型链上进行查找的属性)
- obj
   需要查找的目标对象
- prop
  目标对象内属性名称
 - 返回值
    如果指定的属性存在于对象上,则返回其属性描述符对象。否则返回undefined。


描述

该方法允许对一个属性的描述进行检索。在Javascript中,属性由一个字符串类型的’名字’ 和 一个’属性描述符’对象构成


示例

let obj = {
  foo: 123
}


const property = Object.getOwnPropertyDescriptor(obj, 'foo')
console.log(property) // { value: 123, writable: true, enumerable: true, configurable: true }



let o, d;
  o = {
    get foo() {
      return 9
    }
}

d = Object.getOwnPropertyDescriptor(o, 'foo')

console.log(d)
// {
//   get: [Function: get foo],
//   set: undefined,
//   enumerable: true,
//   configurable: true
// }


let obj1 = {},
result
Object.defineProperty(obj1, 'baz', {
  value: 231,
  writable: false,
  enumerable: false
})

result = Object.getOwnPropertyDescriptor(obj1, 'baz')

console.log(result) // { value: 231, writable: false, enumerable: false, configurable: false }


本文内容仅供个人学习、研究或参考使用,不构成任何形式的决策建议、专业指导或法律依据。未经授权,禁止任何单位或个人以商业售卖、虚假宣传、侵权传播等非学习研究目的使用本文内容。如需分享或转载,请保留原文来源信息,不得篡改、删减内容或侵犯相关权益。感谢您的理解与支持!

链接: https://shenqiku.cn/article/FLY_9268