对象传值的时候能不能不传引用只传赋值

HappyPot
  • 187

对象传值的时候能不能不传引用只传赋值
比如:a和b两个对象
a = b
那么改完a ,b就改了,可不可以改了a,b不动

回复
阅读 1.6k
6 个回答

用拷贝的思想,a = Object.assign({},b);之后改变a 不会影响b

深拷贝了解一下

各种方法深拷贝一下就行 比如
a = JSON.parse(JSON.stringify(b))

对象深克隆了解下,简单实现

JSON.parse(JSON.stringify(object))

那就用深拷贝。
这里的a和b代表的是对象在内存中的地址值,所以a=b其实就是把a赋值b的那个地址,导致两个是同一个对象的地址值。改变其中一个另一个肯定也就改了

也可以了解一下原型模式,涉及到这方面东西。。

宣传栏