復制數組而不指向同一個對象(深拷貝)
const _ = require('lodash'); let one_brand = [ {name: 'A', count: 1, value: Infinity}, {name: 'B', count: 2}, ] // 深拷貝 // 方法一 let two_brand = one_brand.map(o => Object.assign({}, o)); // 方法二 let two_brand = one_brand.map(o => ({...o})); // 方法三(推薦) let two_brand = _.cloneDeep(one_brand);
//該方法僅限於可被JSON.stringify解析的對象。
let newarr = JSON.parse(JSON.stringify(arr));
復制數組,數組為另一個對象,但數組內的元素仍然指向同個對象
方法一:
let newarr = arr.slice(0);
方法二:
let newarr = {...arr};
復制且指向同一個對象(淺拷貝)
let newarr = arr;