硬拷贝vs浅复制JavaScript

这个问题在这里已经有了答案:

  • JavaScript是传递引​​用还是传值语言? 29个答案

  • 对象和数组被视为对同一对象的引用。 如果你想克隆这个对象,有几种方法可以做到这一点。

    在以后的浏览器中,你可以这样做:

    var b = Object.assign({}, a);
    

    如果你想去图书馆,lodash提供_.clone (和_.cloneDeep ):

    var b = _.clone(a);
    

    如果您不想执行这两种方法中的任何一种,则可以枚举每个键和值,并将它们分配给一个新对象。

    在通过多个函数等时,通常将它们视为引用是很有价值的。对于像数字和字符串这样的基本类型,情况并非如此,因为在大多数情况下,这样做会非常违反直觉。

    链接地址: http://www.djcxy.com/p/20801.html

    上一篇: Hard Copy vs Shallow copy javascript

    下一篇: JSON specification for empty objects