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 相关文章推荐
JS小功能(列表页面隔行变色)简单实现
Nov 28 Javascript
jQuery之DOM对象和jQuery对象的转换与区别分析
Jan 08 Javascript
javascript中if和switch,==和===详解
Jul 30 Javascript
js调用百度地图及调用百度地图的搜索功能
Sep 07 Javascript
JavaScript如何动态创建table表格
Aug 02 Javascript
js代码实现点击按钮出现60秒倒计时
Jan 28 Javascript
jQuery文本框得到与失去焦点动态改变样式效果
Sep 08 Javascript
关于vue.js过渡css类名的理解(推荐)
Apr 10 Javascript
vue实现登陆登出的实现示例
Sep 15 Javascript
React 使用browserHistory项目访问404问题解决
Jun 01 Javascript
ng-zorro-antd 入门初体验
Dec 03 Javascript
Vue中登录验证成功后保存token,并每次请求携带并验证token操作
Sep 08 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
如何选购合适的收音机
2021/03/01 无线电
PHP数组的交集array_intersect(),array_intersect_assoc(),array_inter_key()函数的小问题
2011/05/29 PHP
php生成zip压缩文件的方法详解
2013/06/09 PHP
php实现插入数组但不影响原有顺序的方法
2015/03/27 PHP
PHP实现加强版加密解密类实例
2015/07/29 PHP
分析PHP中单双引号的误区和双引号小隐患
2016/07/19 PHP
javascript的事件描述
2006/09/08 Javascript
使用新的消息弹出框blackbirdjs
2008/10/16 Javascript
关于jQuery新的事件绑定机制on()的使用技巧
2013/04/26 Javascript
jquery对dom的操作常用方法整理
2013/06/25 Javascript
通过length属性判断jquery对象是否存在
2013/10/18 Javascript
jquery特效 点击展示与隐藏全文
2015/12/09 Javascript
js实现功能比较全面的全选和多选
2017/03/02 Javascript
源码分析Vue.js的监听实现教程
2017/04/23 Javascript
基于js中style.width与offsetWidth的区别(详解)
2017/11/12 Javascript
Angular2管道Pipe及自定义管道格式数据用法实例分析
2017/11/29 Javascript
详解webpack 打包文件体积过大解决方案(code splitting)
2018/04/10 Javascript
Angular value与ngValue区别详解
2019/11/27 Javascript
Vue 中使用lodash对事件进行防抖和节流操作
2020/07/26 Javascript
[46:20]CHAOS vs Alliacne 2019国际邀请赛小组赛 BO2 第二场 8.15
2019/08/16 DOTA
Python中的is和id用法分析
2015/01/26 Python
Python基于回溯法子集树模板解决数字组合问题实例
2017/09/02 Python
Python文件操作基本流程代码实例
2017/12/11 Python
Python django搭建layui提交表单,表格,图标的实例
2019/11/18 Python
Python pymsql模块的使用
2020/09/07 Python
详解python3 GUI刷屏器(附源码)
2021/02/18 Python
css3如何绘制一个圆圆的loading转圈动画
2018/01/09 HTML / CSS
Kathmandu澳洲户外商店:新西兰户外运动品牌
2017/11/12 全球购物
华为慧通面试题
2012/09/11 面试题
个人求职信范例
2014/01/29 职场文书
重阳节活动总结
2014/08/27 职场文书
作风建设年度心得体会
2014/10/29 职场文书
2014年乡镇党建工作总结
2014/11/11 职场文书
2014年学校总务处工作总结
2014/12/08 职场文书
MyBatis自定义SQL拦截器示例详解
2021/10/24 Java/Android
常用的文件对应的MIME类型汇总
2022/04/26 HTML / CSS