以下哪一项会对对象 person 有副作用?
javascript
const person = {
name: "Lydia Hallie",
address: {
street: "100 Main St"
}
};
Object.freeze(person);A. person.name = "Evan Bacon" B. delete person.address C. person.address.street = "101 Main St" D. person.pet =
答案: C
解析:
使用方法 Object.freeze 对一个对象进行 冻结。不能对属性进行添加,修改,删除。 然而,它仅 对对象进行 浅 冻结,意味着只有 对象中的 直接 属性被冻结。如果属性是另一个 object,像案例中的 address,address 中的属性没有被冻结,仍然可以被修改。