即使复制,reduce方法中的初始对象也会发生突变

时间:2019-06-19 13:28:20

标签: javascript

我想使用具有不同初始变量的Array.prototype.reduce()方法很多次,并且为了保持整洁,我想将它们存储在一个包含这些初始变量的单独文件中。参见示例:

const initObj = {
  fired: {
    times: 0,
    with: []
  }
};

const reducedObj = [1, 4, 2].reduce((acc, item) => {
  acc.fired.times++;
  acc.fired.with.push(item);
 
  return acc;
}, { ...initObj });

console.log("init:", initObj, "reduced:", reducedObj)

那么如何复制不会受到影响的init对象呢?

0 个答案:

没有答案