1. 程式人生 > >javascript返回陣列的不同值

javascript返回陣列的不同值

需求

返回a陣列中不存在於b陣列的值

輸入:兩個陣列
輸出:a陣列中不存在於b陣列的值

程式碼

/*
    返回a陣列中不存在於b陣列的值
*/
const difference = (a,b) =>{
    const s = new Set(b);
    return a.filter(x=>!s.has(x));
}

console.log('a([1,2,5,6],b[1,4,6,8]) 測試結果為:'+difference([1,2,5,6],[1,4,6,8]));

效果

這裡寫圖片描述

一點想法

利用Set的去重特徵,先去優化陣列b,然後利用Array.filter()方法過濾陣列a

Github地址