题目描述得不是很清楚. 在这里重新梳理.
虽然知道push
、splice
这些操作会影响原数组. 但是经过state状态存储依然会相互影响吗?
假定现在存在一个数组array
, 我通过setState
操作了newArray: this.state.array
后续我改变newArray也会影响到array的值. 有什么办法解决吗?
componentDidMount() { let array = [1, 2, 3]; this.setState({ newArray: this.state.array }) } handleChange() { let { newArray } = this.state; newArray.push(4); console.log(array); }
上面结果会输出[1, 2, 3, 4]
.请问真的是因为push、splice改变原数组导致的吗?有什么办法可以解决?谢谢
慕田峪4524236
相关分类