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 相关文章推荐
Javascript将string类型转换int类型
Dec 09 Javascript
JQUERY的属性选择符和自定义选择符使用方法(二)
Apr 07 Javascript
jQuery窗口、文档、网页各种高度的精确理解
Jul 02 Javascript
jQuery实现对无序列表的排序功能(附demo源码下载)
Jun 25 Javascript
利用js的闭包原理做对象封装及调用方法
Apr 07 Javascript
js 两数组去除重复数值的实例
Dec 06 Javascript
Angular自定义组件实现数据双向数据绑定的实例
Dec 11 Javascript
vscode中eslint插件的配置(prettier配置无效)
Sep 10 Javascript
Javascript摸拟自由落体与上抛运动原理与实现方法详解
Apr 08 Javascript
vue2.x数组劫持原理的实现
Apr 19 Javascript
vue 项目引入echarts 添加点击事件操作
Sep 09 Javascript
jQuery ajax - getScript() 方法和getJSON方法
May 14 jQuery
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
深入理解ob_flush和flush的区别(ob_flush()与flush()使用方法)
2013/02/06 PHP
探讨PHP调用时间格式的参数详解
2013/06/06 PHP
PHP+iFrame实现页面无需刷新的异步文件上传
2014/09/16 PHP
PHP简单获取视频预览图的方法
2015/03/12 PHP
用php和jQuery来实现“顶”和“踩”的投票功能
2016/10/13 PHP
ThinkPHP3.2.3框架实现的空模块、空控制器、空操作,跳转到错误404页面图文详解
2019/04/03 PHP
javascript 可以拖动的DIV(二)
2009/06/26 Javascript
JS 无法通过W3C验证的处理方法
2010/03/09 Javascript
常见效果实现之返回顶部(结合淡入、淡出、减速滚动)
2012/01/04 Javascript
浅谈nodeName,nodeValue,nodeType,typeof 的区别
2015/01/13 Javascript
通过伪协议解决父页面与iframe页面通信的问题
2015/04/05 Javascript
整理Javascript基础入门学习笔记
2015/11/29 Javascript
基于BootStrap Metronic开发框架经验小结【四】Bootstrap图标的提取和利用
2016/05/12 Javascript
使用jquery提交form表单并自定义action的方法
2016/05/25 Javascript
Bootstrap基本插件学习笔记之Popover提示框(19)
2016/12/08 Javascript
BootStrap 页签切换失效的解决方法
2017/08/17 Javascript
bootstrap 点击空白处popover弹出框隐藏实例
2018/01/24 Javascript
vue2实现搜索结果中的搜索关键字高亮的代码
2018/08/29 Javascript
vue2过滤器模糊查询方法
2018/09/16 Javascript
微信小程序保存多张图片的实现方法
2019/03/05 Javascript
Python多层嵌套list的递归处理方法(推荐)
2016/06/08 Python
Python实现嵌套列表及字典并按某一元素去重复功能示例
2017/11/30 Python
Python全排列操作实例分析
2018/07/24 Python
python 多进程并行编程 ProcessPoolExecutor的实现
2019/10/11 Python
HTML5图片预览实例分享
2014/06/04 HTML / CSS
Monnier Freres中文官网:法国领先的奢侈品配饰在线零售商
2017/11/01 全球购物
法国高保真音响和家庭影院商店:Son Video
2019/04/26 全球购物
SQL中where和having的区别
2012/06/17 面试题
教师党性分析材料
2014/02/04 职场文书
期中考试后的反思
2014/02/08 职场文书
点菜员岗位职责范本
2014/02/14 职场文书
售房委托书
2014/08/30 职场文书
村党建工作汇报材料
2014/11/02 职场文书
支行行长岗位职责
2015/02/15 职场文书
大学生暑假实习总结
2015/07/13 职场文书
2015中秋祝酒词
2015/08/12 职场文书