减速器中Redux有效负载的问题

时间:2020-08-18 19:07:52

标签: javascript redux

对于减速器中的一种情况,我有以下代码

case CHART_CHANGE: {
            const {method,copiedArray} = payload;

            let ref = copiedArray  
            
            let swapped = bubblesort(copiedArray) //<------here

            console.log(ref)
            console.log(swapped)
          }

      }

问题是这样的,正如您所看到的,在涉及到 bubblesort 函数之前,我已分配了变量ref。但是,当我运行程序时,ref变量与swapped变量具有相同的值。为什么呢?

1 个答案:

答案 0 :(得分:2)

在javascript对象中(数组是对象)是通过引用分配的,因此copiedArrayref引用(指向)同一对象。如果您更改对象的内容(并且您的bubblesort函数似乎已就位-在内部对数组进行更改/更改),则更改在所有变量中均可见:copiedArray,{ {1}}和ref

swapped