let newArr = [...new Set(arr)]; // [1, 2, 4, null, "3", "abc", 3, 5] let newArr = Array.from(new Set(arr)); // [1, 2, 4, null, "3", "abc", 3, 5] let newStr = [...new Set('ababbc')].join('') // 'abc'
9. new MapES6 提供了新的数据布局 Map。雷同于工具,也是键值对的荟萃,可是“键”的范畴不限于字符串,各类范例的值(包罗工具)都可以看成键。
set要领配置键名key对应的键值为value,然后返回整个 Map 布局。假如key已经有值,则键值会被更新,不然就新生成该键。
get要领读取key对应的键值,假如找不到key,返回undefined。
has要领返回一个布尔值,暗示某个键是否在当前 Map 工具之中。
let map = new Map(); let newStr = []; for (let i = 0; i < arr.length; i++) { if (!map.has(arr[i])) { map.set(arr[i], true); newStr.push(arr[i]); } } console.log(newArr) // [1, 2, 4, null, "3", "abc", 3, 5]
总结到此这篇关于JS数组去重的九种高阶要领的文章就先容到这了,更多相关JS数组去重内容请搜索剧本之家以前的文章或继承欣赏下面的相关文章但愿各人今后多多支持剧本之家!
您大概感乐趣的文章: