文章目录
最近,学习和使用了react+ts的一些基本语法,使用过程中遇到了深拷贝和浅拷贝的问题:修改数据后,控制台打印数据已经改变,但是页面却不显示。多亏了同事的帮忙,一言难尽。下面把问题简单记录下。
1:深拷贝和浅拷贝的区别
浅拷贝:两个变量都是指向一个地址,改变了一个变量,另一个变量也随之改变。这也是浅拷贝带来的副作用,两个变量会相互影响到,因为它们指向同一个地址。
深拷贝:两个变量互相独立,指向的是不同的地址。好处是其中一个变量改变了,另外一个变量不受影响。
很显然,我们要想达到数据修改就能在页面显示,使用浅拷贝没错啦。
2:浅拷贝的使用
比如数据是dataSource,那么需要写成 {…dataSource}