JavaScript一个数组赋值给另一个数组

记录一次修复bug的经历

网页在更新迭代时,新版本在开发的时候莫名奇妙的会产生数据上的错误,期初还以为是cookie的储存过多导致的,因为出问题之处的新老版本代码完全一致,即在更新迭代时没有针对该处代码进行修改。

代码基本结构

这一js文件在最开始声明了多个const列表变量,然后在后面会多次引用这几个列表变量。

问题所在

新版本的网页在onload函数中加入了部分代码,这部分代码中包含了对几个const列表变量的引用,想法是新声明一个变量直接等于某个const列表变量,即声明副本,然后对副本进行修改,即只是想使用const变量中的值,修改的话只修改副本,不动原const变量。但是在JavaScript中,直接用将A列表的值用等号赋值给B列表,这就只是把B作为了A的引用,改变B会导致A也会被改变。
所以,在onload函数中加入对const列表变量的引用后,导致了原变量的改变,进而导致后面的代码的数据产生错误。

数组的深拷贝和浅拷贝。

内容引用自 https://blog.csdn.net/qq_33769914/article/details/100015740

浅拷贝,两个数组会相互影响

var array1 = 
  • 15
    点赞
  • 24
    收藏
    觉得还不错? 一键收藏
  • 3
    评论
评论 3
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值