我想知道如何联系不可变的数组。让我们想象一下我从数组list = [4,1]
开始,然后我从动作响应接收数组,如items = [5,2,6]
。如何将结果为[4,1,5,2,6]
的并置数组并且该操作不可变。
奖金:如何覆盖具有相同ID(不可变方式)的项目?让我们想象一下我们在商店books=[{'id':1, 'title': 'Cool story'}, {'id':2, 'title': 'Bad story'}]
中的数组。其他需要覆盖图书的数组(来自API的上次同步)otherArray = [{'id':3, 'title': 'Super story'}, {'id':1, 'title': 'Very cool story'}]
。因此结果应为[{'id':2, 'title': 'Bad story'}], {'id':3, 'title': 'Super story'}, {'id':1, 'title': 'Very cool story'}]
答案 0 :(得分:6)
答案 1 :(得分:1)
虽然如上所述,内置方法.concat()
可以解决您的问题,但您可能希望查看Lodash library。特别是,可以使用_.unionBy(otherArray, books, "id")
解决红利问题。
答案 2 :(得分:0)
通过 ES6 ,您可以使用解构:
const array1 = ["Banana","Apple"];
const array2 = ["Pineapple", "Peach"];
const array3 = [...array1, ...array2];
答案 3 :(得分:0)
arr1.push(...arr2)