const frozen = Object.freeze({ nested: { value: 1 } });
frozen.nested.value = 2; // 行A
frozen.newProp = 'test'; // 行B(严格模式)
frozen.nested = {}; // 行C(严格模式) const obj = Object.freeze({ name: "Alice", age: 30 });
obj.name = "Bob"; // 静默失败(严格模式下抛出 TypeError)
obj.newProp = "x"; // 同上
delete obj.age; // 同上
console.log(obj); // { name: "Alice", age: 30 } — 未变化 const obj = Object.freeze({ nested: { x: 1 } });
obj.nested.x = 99; // 可以修改!
console.log(obj.nested.x); // 99 function deepFreeze(obj) {
Object.keys(obj).forEach(key => {
if (typeof obj[key] === "object" && obj[key] !== null) {
deepFreeze(obj[key]);
}
});
return Object.freeze(obj);
}