美文网首页
前端面试js篇:javascript数组去重有哪些方法?(美团

前端面试js篇:javascript数组去重有哪些方法?(美团

作者: 5cc9c8608284 | 来源:发表于2024-03-21 08:22 被阅读0次

    在 JavaScript 中,有多种方法可以对数组进行去重,下面列出几种比较常见的方法:

    1. 使用 Set:将数组转化为 Set,Set 中的元素是唯一的,然后将 Set 转回数组。
    var arr = [1, 2, 3, 3, 4, 4, 5];
    var uniqueArr = Array.from(new Set(arr));
    
    1. 使用 filter 和 indexOf:使用 filter 方法遍历数组,通过 indexOf 方法判断数组中是否存在当前元素,如果不存在则返回 true 进行过滤。
    var arr = [1, 2, 3, 3, 4, 4, 5];
    var uniqueArr = arr.filter((item, index, array) => {
      return array.indexOf(item) === index;
    });
    
    1. 使用 reduce 和 includes:使用 reduce 方法遍历数组,通过 includes 方法判断数组中是否已经包含当前元素,如果不包含则将当前元素加入结果数组。
    var arr = [1, 2, 3, 3, 4, 4, 5];
    var uniqueArr = arr.reduce((result, item) => {
      if (!result.includes(item)) {
        result.push(item);
      }
      return result;
    }, []);
    
    1. 使用 Map:借助 Map 数据结构的特性,将数组的元素作为 Map 的键,实现去重。
    var arr = [1, 2, 3, 3, 4, 4, 5];
    var uniqueArr = [...new Map(arr.map(item => [item, item])).values()];
    

    相关文章

      网友评论

          本文标题:前端面试js篇:javascript数组去重有哪些方法?(美团

          本文链接:https://www.haomeiwen.com/subject/cvcxtjtx.html