请稍等 ...
×

采纳答案成功!

向帮助你的同学说点啥吧!感谢那些助人为乐的人

Object.assign方法是不是已经改成深拷贝了?

图片描述
请问这个在老师视频中,目标对象比源对象多出的参数是被去除掉的,但我这边多出的属参数还保留着,这是什么回事??

正在回答

2回答

快乐动起来呀 2019-11-27 22:36:39

a 对象不是被换掉了吗?

0 回复 有任何疑惑可以回复我~
  • 提问者 大闲人BORDER #1
    是被换掉了,这个没问题,我的疑问是看视频的时候,比如target = {a:1, b=2};source = {a:3},调用assign后target为{a:3}(因为assign是浅拷贝,只是把源对象的引用地址复制给目标对象,所以目标对象多出的b没了);可我现在的是目标对象多出的参数还存在着,我想问的是这个
    回复 有任何疑惑可以回复我~ 2019-11-28 16:50:31
  • 提问者 大闲人BORDER #2
    老师,求解啊!!!
    回复 有任何疑惑可以回复我~ 2019-12-02 14:00:53
  • 快乐动起来呀 回复 提问者 大闲人BORDER #3
    你理解错了啊,你把浅拷贝理解成引用类型的赋值了好嘛,所谓的浅拷贝是遇到对象直接替换并不会递归做合并
    回复 有任何疑惑可以回复我~ 2019-12-02 23:53:25
努力的小唐 2019-12-02 23:02:03

如果你把h g属性放到a里面,就不会被保留

0 回复 有任何疑惑可以回复我~
  • 提问者 大闲人BORDER #1
    哦!懂了谢谢!
    回复 有任何疑惑可以回复我~ 2019-12-03 15:24:16
问题已解决,确定采纳
还有疑问,暂不采纳
意见反馈 帮助中心 APP下载
官方微信