【发布时间】:2018-12-16 00:04:36
【问题描述】:
我有一个对象“a”并将它分配给另一个名为“b”的变量。 现在我使用 delete 关键字从“b”中删除一些属性值。它从对象“a”和“b”中删除该属性。这是为什么呢?
P.S:我是 javascript 的初学者。对我放轻松。
代码:-
let a = {
a:1,
b:2,
c:3
}
let b = a;
console.log(a); // output { a: 1, b: 2, c: 3 }
delete b.a;
console.log(a) // Expected output { a: 1, b: 2, c: 3 } -- Actual output { b: 2, c: 3 }
【问题讨论】:
-
这是通过引用传递的,这里
a和b将具有相同的值,因此从相同的值中删除 -
“b”和“a”都是指向same对象的变量。
-
您指的是 a 到 b。您没有将 a 的值复制到 b 数组中。它可以是 b = {...a}
标签: javascript