JS实现数组简单去重及数组根据对象中的元素去重操作示例


Posted in Javascript onJanuary 05, 2018

本文实例讲述了JS实现数组简单去重及数组根据对象中的元素去重操作。分享给大家供大家参考,具体如下:

js数组简单去重

var arr1 = [1, 2, 3, 4, 5, 6, 3, 4, 3];
function arrayUnique1(arr) {
  var result = [], hash = {};
  for (var i = 0, elem; (elem = arr[i]) != null; i++) {
    if (!hash[elem]) {
      result.push(elem);
      hash[elem] = true;
    }
  }
  return result;
}
console.log(arrayUnique1(arr1));

结果:

JS实现数组简单去重及数组根据对象中的元素去重操作示例

js数组根据对象中的元素去重

var arr2 = [
  { name: "name1", num: "1" },
  { name: "name2", num: "11" },
  { name: "name3", num: "12" },
  { name: "name4", num: "13" },
  { name: "name2", num: "1" },
  { name: "name6", num: "12" }
]
function arrayUnique2(arr, name) {
  var hash = {};
  return arr.reduce(function (item, next) {
    hash[next[name]] ? '' : hash[next[name]] = true && item.push(next);
    return item;
  }, []);
}
console.log(arrayUnique2(arr2, "name"));
console.log(arrayUnique2(arr2, "num"));

结果:

JS实现数组简单去重及数组根据对象中的元素去重操作示例

Javascript 相关文章推荐
jQuery 位置插件
Dec 25 Javascript
关于event.cancelBubble和event.stopPropagation()的区别介绍
Dec 11 Javascript
浅析document.ready和window.onload的区别讲解
Dec 18 Javascript
js换图片效果可进行定时操作
Jun 09 Javascript
jquery实现选中单选按钮下拉伸缩效果
Aug 06 Javascript
JS实现滑动菜单效果代码(包括Tab,选项卡,横向等效果)
Sep 24 Javascript
详解PHP中pathinfo()函数导致的安全问题
Jan 05 Javascript
JavaScript实现单例模式实例分享
Dec 22 Javascript
JS运动改变单物体透明度的方法分析
Jan 23 Javascript
vue-cli的build的文件夹下没有dev-server.js文件配置mock数据的方法
Apr 17 Javascript
vue axios重复点击取消上一次请求封装的方法
Jun 19 Javascript
手写Vue弹窗Modal的实现代码
Sep 11 Javascript
vue 中directive功能的简单实现
Jan 05 #Javascript
浅谈React前后端同构防止重复渲染
Jan 05 #Javascript
使用vue实现grid-layout功能实例代码
Jan 05 #Javascript
详解为Bootstrap Modal添加拖拽的方法
Jan 05 #Javascript
JS交互点击WKWebView中的图片实现预览效果
Jan 05 #Javascript
Vue组件的使用教程详解
Jan 05 #Javascript
基于three.js编写的一个项目类示例代码
Jan 05 #Javascript
You might like
用PHP将数据导入到Foxmail
2006/10/09 PHP
PHP入门教程之数组用法汇总(创建,删除,遍历,排序等)
2016/09/11 PHP
php实现图片按比例截取的方法
2017/02/06 PHP
LaravelS通过Swoole加速Laravel/Lumen详解
2018/03/02 PHP
laravel 实现根据字段不同值做不同查询
2019/10/23 PHP
一个无限级XML绑定跨框架菜单(For IE)
2007/01/27 Javascript
基于jquery的仿百度搜索框效果代码
2011/04/11 Javascript
JavaScript中的property和attribute介绍
2011/12/26 Javascript
js+html+css实现鼠标移动div实例
2013/01/30 Javascript
js获取dom的高度和宽度(可见区域及部分等等)
2013/06/13 Javascript
一个简单的全屏图片上下打开显示网页效果示例
2014/07/08 Javascript
延时加载JavaScript代码提高速度
2015/12/27 Javascript
jQuery使用Selectator插件实现多选下拉列表过滤框(附源码下载)
2016/04/08 Javascript
AngularJs Managing Service Dependencies详解
2016/09/02 Javascript
原生JS版和jquery版实现checkbox的全选/全不选/点选/行内点选(Mr.Think)
2016/10/29 Javascript
vue v-model实现自定义样式多选与单选功能
2018/07/05 Javascript
详解Node.js中path模块的resolve()和join()方法的区别
2018/10/29 Javascript
[01:10:16]DOTA2上海特级锦标赛B组资格赛#2 Fnatic VS Spirit第一局
2016/02/27 DOTA
python在windows下创建隐藏窗口子进程的方法
2015/06/04 Python
使用Python的urllib和urllib2模块制作爬虫的实例教程
2016/01/20 Python
基于Python的接口测试框架实例
2016/11/04 Python
详解python 发送邮件实例代码
2016/12/22 Python
python自动识别文本编码格式代码
2019/12/26 Python
关于Python Tkinter Button控件command传参问题的解决方式
2020/03/04 Python
Python如何省略括号方法详解
2020/03/21 Python
opencv 查找连通区域 最大面积实例
2020/06/04 Python
Python QTimer实现多线程及QSS应用过程解析
2020/07/11 Python
纯CSS3实现8组超炫酷鼠标滑过图片动画
2016/03/16 HTML / CSS
Mamas & Papas沙特阿拉伯:英国最受欢迎的婴儿品牌
2017/11/20 全球购物
保安自我鉴定范文
2013/12/08 职场文书
小学生寒假家长评语
2014/04/16 职场文书
学校爱心捐款倡议书
2014/05/13 职场文书
导游词开场白
2015/01/31 职场文书
选对餐饮营销策略,营业额才会上涨
2019/08/27 职场文书
golang协程池模拟实现群发邮件功能
2021/05/02 Golang
理解python中装饰器的作用
2021/07/21 Python