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 相关文章推荐
关于IE7 IE8弹出窗口顶上
Dec 22 Javascript
JQuery.closest(),parent(),parents()寻找父结点
Feb 17 Javascript
javascript获取浏览器类型和版本的方法(js获取浏览器版本)
Mar 13 Javascript
js中substring和substr两者区别和使用方法
Nov 09 Javascript
JQuery异步加载PartialView的方法
Jun 07 Javascript
vue指令以及dom操作详解
Mar 04 Javascript
Node.js 使用jade模板引擎的示例
May 11 Javascript
解决webpack dev-server不能匹配post请求的问题
Aug 24 Javascript
使用 electron 实现类似新版 QQ 的登录界面效果(阴影、背景动画、窗体3D翻转)
Oct 23 Javascript
vue 移动端适配方案详解
Nov 15 Javascript
JS实现打砖块游戏
Feb 14 Javascript
ES6扩展运算符和rest运算符用法实例分析
May 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 常用函数库和一些实用小技巧
2009/01/01 PHP
自动把纯文本转换成Web页面的php代码
2009/08/27 PHP
探讨PHP函数ip2long转换IP时数值太大产生负数的解决方法
2013/06/06 PHP
用php简单实现加减乘除计算器
2014/01/06 PHP
ThinkPHP的截取字符串函数无法显示省略号的解决方法
2014/06/25 PHP
Yii把CGridView文本框换成下拉框的方法
2014/12/03 PHP
PHP实现的迷你漂流瓶
2015/07/29 PHP
php实现的debug log日志操作类实例
2016/07/12 PHP
按给定几率进行随机抽取的js代码
2010/12/28 Javascript
获得所有表单值的JQuery实现代码[IE暂不支持]
2012/05/24 Javascript
JavaScript中变量提升 Hoisting
2012/07/03 Javascript
IE关闭时判断及AJAX注销案例学习
2013/02/18 Javascript
原生js和jquery中有关透明度设置的相关问题
2014/01/08 Javascript
js使用循环清空某个div中的input标签值
2014/09/29 Javascript
jQuery选择器源码解读(四):tokenize方法的Expr.preFilter
2015/03/31 Javascript
JavaScript将DOM事件处理程序封装为event.js 出现的低级错误问题
2016/08/03 Javascript
Google 地图事件实例讲解
2016/08/06 Javascript
Angular 中 select指令用法详解
2016/09/29 Javascript
js实现淡入淡出轮播切换功能
2017/01/13 Javascript
BootStrap CSS全局样式和表格样式源码解析
2017/01/20 Javascript
利用javascript实现的三种图片放大镜效果实例(附源码)
2017/01/23 Javascript
解决layer.open弹出框不能获取input框的值为空的问题
2019/09/10 Javascript
vue el-table实现行内编辑功能
2019/12/11 Javascript
JS实现移动端双指缩放和旋转方法
2019/12/13 Javascript
python爬虫入门教程--正则表达式完全指南(五)
2017/05/25 Python
Linux CentOS7下安装python3 的方法
2018/01/21 Python
tensorflow: 查看 tensor详细数值方法
2018/06/13 Python
Python split() 函数拆分字符串将字符串转化为列的方法
2019/07/16 Python
浅谈pytorch池化maxpool2D注意事项
2020/02/18 Python
Python文件夹批处理操作代码实例
2020/07/21 Python
用 Django 开发一个 Python Web API的方法步骤
2020/12/03 Python
CSS3的一个简单导航栏实现
2015/08/03 HTML / CSS
《搭石》教学反思
2014/04/07 职场文书
《小鹰学飞》教学反思
2014/04/23 职场文书
施工员岗位职责范本
2015/04/11 职场文书