题解 | #Object.freeze#
Object.freeze
http://www.nowcoder.com/practice/ba17ac11584a4aaeaef639655b896d86
const _objectFreeze = object => {
// 补全代码
if(typeof object == null) return // typeof Array和 typeof Null 等于Object
for(let k in object ){
// let type = Object.prototype.toString.call(object[k])
if(typeof object[k] == "object"){
_objectFreeze(object[k]) //递归检查子属性
}else{
Object.defineProperty(object,k,{ //设置属性不可修改,不可配置
writable:false,
configurable:false,
})
}
}
Object.seal(object) // 封闭 object 对象,在对象外面不能增加,不可删除,可修改
}