2017年1月19日 星期四

(js)javascript特性

列出一物件的鍵值(包含原型): Object.keys(obj)

列出一物件的鍵值(只有自身的): Object.getOwnPropertyNames(obj)

檢查物件是否含有此鍵值(非繼承): Object.prototype.hasOwnProperty(obj)

讀取物件的原型: Object.getPrototypeOf(obj);

x是否是y的原型之一: x.isprototypeof(y)

取得原型:  Object.getPrototypeOf(obj);
----------------------------------------------------------------------------------
// 取得物件特性的屬性
var x = {
     age: 15
}
console.dir(Object.getOwnPropertyDescriptor(x, 'age'));

>>configurable:true // 當且僅當該屬性的 configurable 為 true 時,該屬性描述符才能夠被改變,也能夠被刪除。默認為 false。

>>enumerable:true // 當且僅當該屬性的 enumerable 為 true 時,該屬性才能夠出現在對象的枚舉屬性中。默認為 false

>>value:15
>>writable:true // 當且僅當該屬性的 writable 為 true 時,該屬性才能被賦值運算符改變。默認為 false。

----------------------------------------------------------------------------------