为了账号安全,请及时绑定邮箱和手机立即绑定

react数组内取出的对象发生变化,会影响原数组

react数组内取出的对象发生变化,会影响原数组

慕哥6287543 2018-09-08 16:41:34
定义一个数组this.state = {    list: [],    obj: {} }const list = [     {id: 1},     {id: 2} ]this.setState({    list})取出一个对象const obj = list[0]this.setState({     obj })修改对象,修改值,然后setStateobj.id = 3this.setState({     obj })问题来了,请问原因?像这样修改,list中obj值也会发生变化,会成这样[     {id: 3},     {id: 2} ]即使把obj和list切断,如下操作,修改obj,list的值依然会变化const list1 = [].concat(list)const obj = list1[0]// 然后修改obj,list中obj的值依然会变
查看完整描述

2 回答

?
慕盖茨4494581

TA贡献1850条经验 获得超11个赞

js对象的引用了解一下

查看完整回答
反对 回复 2018-09-09
  • 2 回答
  • 0 关注
  • 1370 浏览
慕课专栏
更多

添加回答

举报

0/150
提交
取消
意见反馈 帮助中心 APP下载
官方微信