Object.getOwnPropertyDescriptor
方法允许查询有关属性的完整信息并返回自己属性的属性描述符(即直接存在于对象上而不是对象的原型链中的属性描述符) 的给定对象。
语法:
bject.getOwnPropertyDescriptor(obj, prop)
参数
obj:它是要在其中查找属性的对象。
Prop:它是要检索其描述的属性的名称。
返回值
如果对象上存在给定属性,则返回该属性的属性描述符。
浏览器支持
chrome | 4 |
edge | 是的 |
firefox | 12 |
opera | 4 |
示例
下面介绍一些例子帮助理解该方法的使用。示例1
const object1 = {
property1: 42
}
const object2 = {
property2: 34
}
const descriptor1 = Object.getOwnPropertyDescriptor(object1, 'property1');
const descriptor2 = Object.getOwnPropertyDescriptor(object2, 'property2');
console.log(descriptor1.enumerable);
console.log(descriptor2.enumerable);
console.log(descriptor1.value);
console.log(descriptor2.value);
输出:
true
true
42
34
true
42
34
示例2
const object1 = {
property1: 42
}
const descriptor1 = Object.getOwnPropertyDescriptor(object1, 'property1');
console.log(descriptor1.configurable);
console.log(descriptor1.enumerable);
console.log(descriptor1.value);
输出:
true
true
42
true
42
示例3
const object1 = {
property1: 56
}
const descriptor1 = Object.getOwnPropertyDescriptor(object1, 'property1');
console.log(descriptor1.writable);
console.log(descriptor1.value);
输出:
true
56
56