浅拷贝是将两个数的指针放在一起。
深拷贝是将值赋值。
浅拷贝会引起这个值改变,导致另一个值也跟着改变。
this.setState({
data:value ///这里的赋值是简单的进行了浅拷贝。也是说两个值会互相的影响
}) 但是有一点要注意,只有数组跟对象才存在深浅拷贝的问题。如果只是一个简单的字符串,并不需要考虑这么多
这里的this.setState其实只是一个es6的写法。普通的写法可能就是用=。想法的原理都是一样的
浅拷贝就是简单的拷贝指针。深拷贝就是把值跟指针都给复制了。
进行深拷贝的方法:
NewData = JSON.parse(JSON.stringify(Olddata)) //Olddata可以是数组对象