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 验证日期的函数
Mar 18 Javascript
JS判断是否为数字,是否为整数,是否为浮点数的代码
Apr 24 Javascript
如何获取select下拉框的值(option没有及有value属性)
Nov 08 Javascript
简介JavaScript中的setTime()方法的使用
Jun 11 Javascript
js css3实现图片拖拽效果
Mar 04 Javascript
使用Vue制作图片轮播组件思路详解
Mar 21 Javascript
RequireJS用法简单示例
Aug 20 Javascript
layui递归实现动态左侧菜单
Jul 26 Javascript
vue的三种图片引入方式代码实例
Nov 19 Javascript
快速解决Vue、element-ui的resetFields()方法重置表单无效的问题
Aug 12 Javascript
解决Vue-cli3没有vue.config.js文件夹及配置vue项目域名的问题
Dec 04 Vue.js
低门槛开发iOS、Android、小程序应用的前端框架详解
Oct 16 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
多数据表共用一个页的新闻发布
2006/10/09 PHP
一些PHP写的小东西
2006/12/06 PHP
剖析 PHP 中的输出缓冲
2006/12/21 PHP
php版微信自动获取收货地址api用法示例
2016/09/22 PHP
PHP图片添加水印功能示例小结
2016/10/03 PHP
使用Yii2实现主从数据库设置
2016/11/20 PHP
jQuery 行背景颜色的交替显示(隔行变色)实现代码
2009/12/13 Javascript
初窥JQuery(二) 事件机制(1)
2010/11/25 Javascript
jQuery简单图表peity.js使用示例
2014/05/02 Javascript
JavaScript中的公有、私有、特权和静态成员用法分析
2014/11/20 Javascript
jquery.gridrotator实现响应式图片展示画廊效果
2015/06/23 Javascript
jquery实现的3D旋转木马特效代码分享
2015/08/25 Javascript
JS实现的仿QQ空间图片弹出效果代码
2016/02/23 Javascript
GitHub上一些实用的JavaScript的文件压缩解压缩库推荐
2016/03/13 Javascript
如何解决IONIC页面底部被遮住无法向上滚动问题
2016/09/06 Javascript
基于JavaScript实现瀑布流效果
2017/03/29 Javascript
BootStrap模态框不垂直居中的解决方法
2017/10/19 Javascript
JS异步函数队列功能实例分析
2017/11/28 Javascript
React中使用UEditor百度富文本的方法
2018/08/22 Javascript
Vue设置长时间未操作登录自动到期返回登录页
2020/01/22 Javascript
[08:07]DOTA2每周TOP10 精彩击杀集锦vol.8
2014/06/25 DOTA
详解Python中列表和元祖的使用方法
2015/04/25 Python
在Python中输入一个以空格为间隔的数组方法
2018/11/13 Python
python如何实现代码检查
2019/06/28 Python
深入解析神经网络从原理到实现
2019/07/26 Python
python中property和setter装饰器用法
2019/12/19 Python
Python flask框架端口失效解决方案
2020/06/04 Python
Python中用xlwt制作表格实例讲解
2020/11/05 Python
CSS3实现跳动的动画效果
2016/09/12 HTML / CSS
Overload和Override的区别
2012/09/02 面试题
称象教学反思
2014/02/03 职场文书
说明书范文
2014/05/07 职场文书
留学经费担保书
2014/05/12 职场文书
Vue3中toRef与toRefs的区别
2022/03/24 Vue.js
Golang ort 中的sortInts 方法
2022/04/24 Golang
Python可视化神器pyecharts绘制水球图
2022/07/07 Python