js push() 函数使用踩坑

论坛 期权论坛 脚本     
匿名技术用户   2020-12-28 16:46   28   0

let testData = {name:''}

let teatArr = []

teatArr.push(testData)

teatArr.push(testData)

teatArr[0].name='jemi' // 或者testData.name = 'jemi'

console.log('teatArr:',teatArr)

打印出来结果:

所以push函数的参数是一个实体对象时,改变它的数据,同时也会改变使用push的对象,也就是push(参数项),参数项还存在引用关系(指向同一个内存区域),可以使用push(lodash.cloneDeep(参数项))深度拷贝对象

分享到 :
0 人收藏
您需要登录后才可以回帖 登录 | 立即注册

本版积分规则

积分:7942463
帖子:1588486
精华:0
期权论坛 期权论坛
发布
内容

下载期权论坛手机APP