记录两个ES6解决常用场景前端数据的方法:
一. 多维数组降维并去重的极简方法:(直接上代码)
let src_arr=[1, 2, [2, 3, 4], 3, 4, 5] ;
let res_arr=[...new Set(Array.prototype.concat.apply([],src_arr))] ;
console.log(res_arr); //-----------[1, 2, 3, 4, 5];
二. 两个数组求交集,并集,差集.
let a = new Set([1, 2, 3]);
let b = new Set([4, 3, 2]);
// 并集
let union = new Set([...a, ...b]);
// Set {1, 2, 3, 4}
// 交集
let intersect = new Set([...a].filter(x => b.has(x)));
// set {2, 3}
// 差集
let difference = new Set([...a].filter(x => !b.has(x)));
// Set {1}