JS中去掉array中重复元素的方法


Posted in Javascript onMay 26, 2017

今天看了廖雪峰的js教程,看到了filter的用法。

其中用它来实现去除Array中重复元素的方法在这里记录下来。

Filter

filter是一个常用的操作,它用于把Array的某些元素过滤掉,然后返回剩下的元素。

和map()类似,Array的filter()也接收一个函数。和map()不同的是,filter()把传入的函数依次作用于每个元素,然后根据返回值是true还是false决定保留还是丢弃该元素。

利用filter,可以巧妙地去除Array的重复元素:

'use strict';
var
  r,
  arr = ['apple', 'strawberry', 'banana', 'pear', 'apple', 'orange', 'orange', 'strawberry'];
  r = arr.filter(function (element, index, self) {
  return self.indexOf(element) === index;
});

因为Array中的indexOf总是返回第一次出现某一个元素的位置,后续的重复元素位置与indexOf返回的位置不相等,因此被filter滤掉了。

以上所述是小编给大家介绍的JS中去掉array中重复元素的方法,希望对大家有所帮助,如果大家有任何疑问请给我留言,小编会及时回复大家的。在此也非常感谢大家对三水点靠木网站的支持!

Javascript 相关文章推荐
Mootools 1.2教程 同时进行多个形变动画
Sep 15 Javascript
chrome调试javascript详解
Oct 21 Javascript
Angular的模块化(代码分享)
Dec 26 Javascript
JS跨域请求外部服务器的资源
Feb 06 Javascript
基于canvas粒子系统的构建详解
Aug 31 Javascript
基于AngularJS的简单使用详解
Sep 10 Javascript
基于vue和react的spa进行按需加载的实现方法
Sep 29 Javascript
跨域请求两种方法 jsonp和cors的实现
Nov 11 Javascript
vue-cli3 从搭建到优化的详细步骤
Jan 20 Javascript
jQuery实现ajax的嵌套请求案例分析
Feb 16 jQuery
使用Webpack 搭建 Vue3 开发环境过程详解
Jul 28 Javascript
vue中使用腾讯云Im的示例
Oct 23 Javascript
React Js 微信禁止复制链接分享禁止隐藏右上角菜单功能
May 26 #Javascript
AngularJS表单验证功能分析
May 26 #Javascript
给Easyui-Datebox设置隐藏或者不可用的解决方法
May 26 #Javascript
vue-cli+webpack在生成的项目中使用bootstrap实例代码
May 26 #Javascript
BootStrap中的Fontawesome 图标
May 25 #Javascript
Vue.js 中的 $watch使用方法
May 25 #Javascript
详解Javascript获取缓存和清除缓存API
May 25 #Javascript
You might like
用php将任何格式视频转为flv的代码
2009/09/03 PHP
PDO操作MySQL的基础教程(推荐)
2017/08/18 PHP
PHP dirname功能及原理实例解析
2020/10/28 PHP
Apache站点配置SSL强制跳转443
2021/03/09 Servers
JavaScript 拖拉缩放效果
2008/12/10 Javascript
checkbox设置复选框的只读效果不让用户勾选
2013/08/12 Javascript
angularjs中的单元测试实例
2014/12/06 Javascript
Nodejs获取网络数据并生成Excel表格
2020/03/31 NodeJs
Vuejs第十篇之vuejs父子组件通信
2016/09/06 Javascript
Angularjs 设置全局变量的方法总结
2016/10/20 Javascript
简单的js计算器实现
2016/10/26 Javascript
easyui-datagrid特殊字符不能显示的处理方法
2017/04/12 Javascript
JavaScript屏蔽Backspace键的实现代码
2017/11/02 Javascript
详解webpack提取第三方库的正确姿势
2017/12/22 Javascript
vue组件实现可搜索下拉框扩展
2020/10/23 Javascript
详解使用create-react-app添加css modules、sasss和antd
2018/07/31 Javascript
Webpack 4.x搭建react开发环境的方法步骤
2018/08/15 Javascript
详解使用jest对vue项目进行单元测试
2018/09/07 Javascript
JS中判断字符串存在和非空的方法
2018/09/12 Javascript
js 将线性数据转为树形的示例代码
2019/05/28 Javascript
Angular8 Http拦截器简单使用教程
2019/08/20 Javascript
微信小程序修改数组长度的问题的解决
2019/12/17 Javascript
Vue+Spring Boot简单用户登录(附Demo)
2020/11/12 Javascript
python基础入门学习笔记(Python环境搭建)
2016/01/13 Python
python爬虫使用cookie登录详解
2017/12/27 Python
Python使用Windows API创建窗口示例【基于win32gui模块】
2018/05/09 Python
Django框架实现的简单分页功能示例
2018/12/04 Python
django使用xadmin的全局配置详解
2019/11/15 Python
Python with标签使用方法解析
2020/01/17 Python
Python tkinter 下拉日历控件代码
2020/03/04 Python
英国和爱尔兰最大的地毯零售商:Kukoon
2018/12/17 全球购物
欧洲最古老的鞋厂:Peter Kaiser
2019/11/05 全球购物
求职自荐信格式
2013/12/04 职场文书
2015年敬老院工作总结
2015/05/18 职场文书
详解RedisTemplate下Redis分布式锁引发的系列问题
2021/04/27 Redis
SQL实现LeetCode(176.第二高薪水)
2021/08/04 MySQL