JavaScript對象的屬性描述符是用來描述對象屬性特性的對象。每個對象屬性都有一組特性,包括:可寫性(writable),可枚舉性(enumerable),可配置性(configurable)和值(value)。
屬性描述符有兩種類型:數據描述符和訪問器描述符。
數據描述符:
訪問器描述符:
可以通過Object.getOwnPropertyDescriptor(obj, prop)方法獲取屬性描述符。例如:
const obj = {
name: 'John',
age: 25
};
const descriptor = Object.getOwnPropertyDescriptor(obj, 'name');
console.log(descriptor);
輸出結果為:
{
value: 'John',
writable: true,
enumerable: true,
configurable: true
}
這個例子展示了如何獲取對象屬性的描述符。可以看到,name屬性是可寫入、可枚舉和可配置的。