我不明白为什么我的对象会覆盖另一个卡住的对象,我尝试从以前的对象创建一个新实例,然后卡住它。但无论如何,即使它被卡住,它也会覆盖自己
另外,为什么我可以更改我的 check
对象(如果它是 const
)
JS确实很奇怪
我有下面的代码
let obj = {check: "check"};
const check = Object.create(obj);
Object.freeze(check);
obj["second"] = "something";
// Expected result: obj = {check: "check", second: "something"}
// check = {check: "check"}
// Actual result: obj = {check: "check", second: "something"}
// check = {check: "check", second: "something"}
最佳答案
Object.create()
不会克隆您应该使用的对象 Object.assign
let obj = {check: "check"};
const check = Object.create(obj);
Object.seal(check);
obj["second"] = "something";
console.log(check)
关于javascript - 为什么对象要重写另一个卡住的对象,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/55332401/