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 相关文章推荐
javascript jQuery插件练习
Dec 24 Javascript
extjs 为某个事件设置拦截器
Jan 15 Javascript
从零开始学习jQuery (三) 管理jQuery包装集
Feb 23 Javascript
单元选择合并变色示例代码
May 26 Javascript
详谈JavaScript内存泄漏
Nov 14 Javascript
基于jQuery实现中英文切换导航条效果
Sep 18 Javascript
AngularJs中Bootstrap3 datetimepicker使用实例
Dec 13 Javascript
Bootstrap源码解读按钮(5)
Dec 23 Javascript
Vue 2.0 服务端渲染入门介绍
Mar 29 Javascript
node.js+express+mySQL+ejs+bootstrop实现网站登录注册功能
Jan 12 Javascript
vue实现学生录入系统之添加删除功能
Jul 11 Javascript
JS实现处理时间,年月日,星期的公共方法示例
May 31 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的可变变量名需要的注意的问题
2013/06/20 PHP
浅谈PDO的rowCount函数
2015/06/18 PHP
php编译安装php-amq扩展简明教程
2016/06/25 PHP
PHP单文件上传原理及上传函数的封装操作示例
2019/09/02 PHP
php框架知识点的整理和补充
2021/03/01 PHP
javascript中声明函数的方法及调用函数的返回值
2014/07/22 Javascript
JavaScript中length属性的使用方法
2015/06/05 Javascript
jQuery实现自动切换播放的经典滑动门效果
2015/09/12 Javascript
Linux下为Node.js程序配置MySQL或Oracle数据库的方法
2016/03/19 Javascript
bootstrap css样式之表单
2017/01/19 Javascript
vue2.0结合DataTable插件实现表格动态刷新的方法详解
2017/03/17 Javascript
JavaScript用二分法查找数据的实例代码
2017/06/17 Javascript
jQuery实现一个简单的验证码功能
2017/06/26 jQuery
原生JavaScript实现刮刮乐
2020/09/29 Javascript
JS指定音频audio在某个时间点进行播放
2020/11/28 Javascript
[01:45:05]VGJ.T vs Newbee Supermajor 败者组 BO3 第二场 6.6
2018/06/07 DOTA
python如何查看系统网络流量的信息
2016/09/12 Python
python下如何查询CS反恐精英的服务器信息
2017/01/17 Python
Python基于socket实现简单的即时通讯功能示例
2018/01/16 Python
python实现停车管理系统
2018/11/30 Python
python selenium执行所有测试用例并生成报告的方法
2019/02/13 Python
Python字符串内置函数功能与用法总结
2019/04/16 Python
django 使用 PIL 压缩图片的例子
2019/08/16 Python
python pillow模块使用方法详解
2019/08/30 Python
Python三维绘图之Matplotlib库的使用方法
2020/09/20 Python
python实现发送邮件
2021/03/02 Python
html5 application cache遇到的严重问题
2012/12/26 HTML / CSS
德国奢侈品网上商城:Mytheresa
2016/08/24 全球购物
土木工程专业个人求职信
2013/12/05 职场文书
2014年教师政治学习材料
2014/06/02 职场文书
公司授权委托书范本
2014/09/18 职场文书
医院2014国庆节活动策划方案
2014/09/21 职场文书
无违反计划生育证明格式
2015/06/24 职场文书
SQLServer 日期函数大全(小结)
2021/04/08 SQL Server
Python利用capstone实现反汇编
2022/04/06 Python
ubuntu开机后ROS程序自启动问题
2022/12/24 Servers