javascript - js 对象深拷贝和赋值

查看:118
本文介绍了javascript - js 对象深拷贝和赋值的处理方法,对大家解决问题具有一定的参考价值,需要的朋友们下面随着小编来一起学习吧!

问题描述

问 题

代码中得到一个数组arr=[1,2,3];
因为马上会被销毁,所以不能直接赋值给对象Obj.a,
请问这种情况jquery如何写,使得arr销毁之后Obj.a=[1,2,3]?

解决方案

一般情况下很少会在 JS 中遇到销毁。然后,我不明白你所谓的立即销毁是指什么?

如果是指 delete arr,那么直接赋值也不会有问题,如下图:

如果你是要改变 arr 的内容。那么可以复制一个数组(有几种方法,concat 只是其中一种)

Obj.a = [].concat(arr);

如果确实需要深拷贝,jQuery.fn.clone(),不过貌似有一些限制。

如果其它数据,自己写深拷贝还是有点难度也比较麻烦,不如用 Lodash 的 cloneDeep()

这篇关于javascript - js 对象深拷贝和赋值的文章就介绍到这了,希望我们推荐的答案对大家有所帮助,也希望大家多多支持IT屋!

查看全文
登录 关闭
扫码关注1秒登录
发送“验证码”获取 | 15天全站免登陆