function deepFreeze (o) {
var prop, propKey
Object.freeze(o) // 首先冻结第一层对象
for (propKey in o) {
prop = o[propKey]
if (!o.hasOwnProperty(propKey) || !(typeof prop === "object") || Object.isFrozen(prop)) {
// 跳过原型链上的属性和已冻结的对象.
continue
}
deepFreeze(prop) //递归调用.
}
}
js深冻结
最新推荐文章于 2024-07-30 10:42:55 发布