前端经典面试题js去重方法都有哪些

  1. 使用 Set

    Set 是 ES6 中引入的一种数据结构,它只允许存储唯一的值,可以利用这一特性来实现数组去重。

    const array = [1, 2, 2, 3, 4, 4, 5];
    const uniqueArray = [...new Set(array)];
  2. 使用 indexOf 或 includes 方法

    遍历原数组,将不重复的元素添加到新数组中。

    const array = [1, 2, 2, 3, 4, 4, 5];
    const uniqueArray = [];
    ​
    array.forEach((element) => {
      if (uniqueArray.indexOf(element) === -1) {
        uniqueArray.push(element);
      }
    });

    或者使用 includes 方法:

    const array = [1, 2, 2, 3, 4, 4, 5];
    const uniqueArray = [];
    ​
    array.forEach((element) => {
      if (!uniqueArray.includes(element)) {
        uniqueArray.push(element);
      }
    });
  3. 使用 filter 方法

    利用 filter 方法和 indexOf 或 includes 方法来创建新数组。

    const array = [1, 2, 2, 3, 4, 4, 5];
    const uniqueArray = array.filter((element, index, self) => {
      return self.indexOf(element) === index;
    });

    或者使用 includes 方法:

    const array = [1, 2, 2, 3, 4, 4, 5];
    const uniqueArray = array.filter((element, index, self) => {
      return !self.includes(element, index + 1);
    });
  4. 使用 reduce 方法

    使用 reduce 方法遍历数组,将不重复的元素添加到累积的结果中。

    econst array = [1, 2, 2, 3, 4, 4, 5];
    const uniqueArray = array.reduce((accumulator, element) => {
      if (!accumulator.includes(element)) {
        accumulator.push(element);
      }
      return accumulator;
    }, []);

相关推荐

  1. 前端经典面试js方法哪些

    2024-01-29 17:00:02       37 阅读
  2. js深拷贝和浅拷贝经典面试方法可以实现

    2024-01-29 17:00:02       31 阅读
  3. 面试百问之mysql 数据库方式哪些

    2024-01-29 17:00:02       35 阅读
  4. js跳转页面哪些方式

    2024-01-29 17:00:02       39 阅读
  5. 前端HTML面试:meta 元素什么

    2024-01-29 17:00:02       13 阅读
  6. js多种数组方法

    2024-01-29 17:00:02       31 阅读
  7. js数组常见方法

    2024-01-29 17:00:02       16 阅读
  8. 前端开发语言哪些

    2024-01-29 17:00:02       14 阅读

最近更新

  1. TCP协议是安全的吗?

    2024-01-29 17:00:02       16 阅读
  2. 阿里云服务器执行yum,一直下载docker-ce-stable失败

    2024-01-29 17:00:02       16 阅读
  3. 【Python教程】压缩PDF文件大小

    2024-01-29 17:00:02       15 阅读
  4. 通过文章id递归查询所有评论(xml)

    2024-01-29 17:00:02       18 阅读

热门阅读

  1. 深入理解网络爬虫的基本原理和应用

    2024-01-29 17:00:02       36 阅读
  2. 前端页面使用html2canvas生成图片

    2024-01-29 17:00:02       29 阅读