Object的相關函數

對象常量: 結合writable和configurable:false 能夠建立一個真正的常量屬性
禁止擴張:Object.preventExtensions(obj)來禁止一個對象添加新屬性並保留已有屬性app

密封: 在 Object.seal(obj) 後不能增,刪,改 該屬性ide

凍結: Object.freeze(obj) 會禁止對於對象自己及任意直接屬性的修改url

var a= {}
Object.defineProperty(a,"b",{
    value:123,
    writable:false,
    enumerable:false,
    configurable:false
})
value:屬性的值(不用多說了)

writable:若是爲false,屬性的值就不能被重寫,只能爲只讀了

configurable:總開關,一旦爲false,就不能再設置他的(value,writable,configurable)

enumerable:是否能在for...in循環中遍歷出來或在Object.keys中列舉出來。get,set:在 descriptor 中不能 同時設置訪問器 (get 和 set) 和 wriable 或 value,不然會錯,就是說想用(get 和 set),就不能用(wriable 或 value中的任何一個)
相關文章
相關標籤/搜索