item => !arr1.includes(item) || !arr2.includes

最近做的一道题,题目是求两个数组的差异,并返回新数组。

我看到其中一个非常简练的答案是这样的:

function diffArray(arr1, arr2) {

  return arr1

    .concat(arr2)

    .filter(

        item => !arr1.includes(item) || !arr2.includes(item)

    )

}


diffArray([1, 2, 3, 5], [1, 2, 3, 4, 5]);

其中的item => !arr1.includes(item) || !arr2.includes(item)我完全看不懂,没见过这是什么语法,求大神指点,谢谢!

杨魅力
浏览 740回答 1
1回答

波斯汪

涉及3个点:箭头函数短路求值includesitem => !arr1.includes(item) || !arr2.includes(item)可以做如下翻译:function (item) {    if (!arr1.includes(item)) {        return true;     }         if (!arr2.includes(item)) {        return true;     }         return false; }
打开App,查看更多内容
随时随地看视频慕课网APP

相关分类

JavaScript