|
|
1
0
是的,但这并不是基元独有的,对象也会发生这种情况。如果你这样做:
新对象存储在另一个内存位置,第一个对象可以被垃圾回收(假设没有其他对象引用它)。
当他们说基元是不可变的时,他们的意思是别的。它们意味着你不能对记忆中的那个位置进行更改。例如,
在严格模式下,你要么会得到一个错误,要么在非严格模式下什么都不会发生。 相比之下,对象 可以 被突变。您可以更改它们所包含的内容,同时仍将它们保留在内存中的同一位置:
|
|
|
2
0
你在这里点击,旧值和新值占据了不同的内存位置。
说
当你这样做的时候
因此,在Javascript中,基元是不可变的,每个新赋值在内存中创建一个新值,而不是修改现有值。 |