Javascript分配对象与复制属性

Javascript分配对象与复制属性,javascript,performance,memory-management,Javascript,Performance,Memory Management,我有一个应用程序,它经常调用AJAX来获取JSON格式的(关联)数组。对于每个AJAX结果,我需要根据新的JSON结果更新当前数组 以下方法在内存消耗和垃圾收集方面有什么不同 将数组(对象)的每个元素直接指定给目标数组。i、 e.myArray[ID].data=jsonData[ID] 为每个对象逐个指定特性。i、 e.myArray[ID].data[prop]=jsonData[ID][prop] 阵列结构 // Format of my data in the page myArray

我有一个应用程序,它经常调用AJAX来获取JSON格式的(关联)数组。对于每个AJAX结果,我需要根据新的JSON结果更新当前数组

以下方法在内存消耗和垃圾收集方面有什么不同

  • 将数组(对象)的每个元素直接指定给目标数组。i、 e.
    myArray[ID].data=jsonData[ID]
  • 为每个对象逐个指定特性。i、 e.
    myArray[ID].data[prop]=jsonData[ID][prop]

  • 阵列结构

    // Format of my data in the page
    myArray = {'ID1': {'dom-el': dom-el, 'data': data-object}} 
    
    // Format of JSON data through AJAX request
    jsonData = {'ID1': data-object,... }
    

    分配引用与分配原语-这就是您要问的吗?一个接一个地复制原语总是会更慢、更重。@webduvet这很好,但我想问的是,在这两种情况下,内存消耗会受到怎样的影响。以及如何对对象进行垃圾收集。我想我会重写这个问题。如果你像
    oldObject.data=newArray
    那样分配新对象。然后,只要没有指向它的变量,引用它的oldObject.data将有资格进行垃圾收集。