ES5給Object擴展了好一些靜態方法, 經常使用的2個:函數
- Object.create(prototype, [descriptors])
- 做用: 以指定對象爲原型建立新的對象
- 爲新的對象指定新的屬性, 並對屬性進行描述
value : 指定值
writable : 標識當前屬性值是不是可修改的, 默認爲false
configurable: 標識當前屬性是否能夠被刪除 默認爲false
enumerable: 標識當前屬性是否能用for in 枚舉 默認爲false
- Object.defineProperties(object, descriptors)
- 做用: 爲指定對象定義擴展多個屬性
- get :用來獲取當前屬性值得回調函數
- set :修改當前屬性值得觸發的回調函數,而且實參即爲修改後的值
- 存取器屬性:setter,getter一個用來存值,一個用來取值
對象自己的兩個方法
- get propertyName(){} 用來獲得當前屬性值的回調函數
- set propertyName(){} 用來監視當前屬性值變化的回調函數