浅拷贝
- 定义:对于引用类型而言,将两个引用类型指向同个地址,其中一个引用类型改变另一个也会改变
<script>
var man = {name:'da'};
var man1 = man;
man.name = 'didi'; console.log("man:",man,"man1:",man1); // man: {name: 'didi'} man1: {name: 'didi'}
</script>
深拷贝
- 定义:对于引用类型而言,复制后引用类型指向⼀个新的内存地址,两个对象改变互不影响
- 类似于基本数据类型的赋值
<script>
var man = {name:'da'};
var man1 = JSON.parse(JSON.stringify(man));
man.name = 'didi';
console.log("man:",man,"man1:",man1); // man: {name: 'didi'} man1: {name: 'da'}
</script>
PS:(浅拷贝和深拷贝都是对于引用数据类型而言)