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 相关文章推荐
EasyUi datagrid 实现表格分页
Feb 10 Javascript
js中flexible.js实现淘宝弹性布局方案
Jun 23 Javascript
js仿QQ中对联系人向左滑动、滑出删除按钮的操作
Apr 07 Javascript
js replace(a,b)之替换字符串中所有指定字符的方法
Aug 17 Javascript
JS多物体实现缓冲运动效果示例
Dec 20 Javascript
使用Browserify来实现CommonJS的浏览器加载方法
May 14 Javascript
Node.js中流(stream)的使用方法示例
Jul 16 Javascript
element-ui upload组件多文件上传的示例代码
Oct 17 Javascript
jQuery实现每日秒杀商品倒计时功能
Sep 06 jQuery
JS实现音乐导航特效
Jan 06 Javascript
element el-tree组件的动态加载、新增、更新节点的实现
Feb 27 Javascript
详解如何在vue+element-ui的项目中封装dialog组件
Dec 11 Vue.js
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
超强分页类2.0发布,支持自定义风格,默认4种显示模式
2007/01/02 PHP
php上传图片到指定位置路径保存到数据库的具体实现
2013/12/30 PHP
thinkphp在模型中自动完成session赋值示例代码
2014/09/09 PHP
php图像处理类实例
2015/07/28 PHP
PHP编程中尝试程序并发的几种方式总结
2016/03/21 PHP
关于PHP文件的自动运行方法分析
2016/05/13 PHP
php版微信js-sdk支付接口类用法示例
2016/10/12 PHP
php把时间戳转换成多少时间之前函数的实例
2016/11/16 PHP
Yii2.0 RESTful API 基础配置教程详解
2018/12/26 PHP
javascript中关于break,continue的特殊用法与介绍
2012/05/24 Javascript
ActiveX控件与Javascript之间的交互示例
2014/06/04 Javascript
JavaScript实现信用卡校验方法
2015/04/07 Javascript
javascript自定义in_array()函数实现方法
2015/08/03 Javascript
js淡入淡出的图片轮播效果代码分享
2015/08/24 Javascript
window.onerror()的用法与实例分析
2016/01/27 Javascript
移动端触摸滑动插件swiper使用方法详解
2017/08/11 Javascript
详解vue项目中实现图片裁剪功能
2019/06/07 Javascript
详解钉钉小程序组件之自定义模态框(弹窗封装实现)
2020/03/07 Javascript
[53:03]Optic vs TNC 2018国际邀请赛小组赛BO2 第一场 8.17
2018/08/18 DOTA
[01:33:30]DOTA2-DPC中国联赛 正赛 RNG vs Phoenix BO3 第二场 2月5日
2021/03/11 DOTA
django实现分页的方法
2015/05/26 Python
Python在Console下显示文本进度条的方法
2016/02/14 Python
python中异常捕获方法详解
2017/03/03 Python
python使用os.listdir和os.walk获得文件的路径的方法
2017/12/16 Python
详解python中*号的用法
2019/10/21 Python
python爬虫学习笔记之Beautifulsoup模块用法详解
2020/04/09 Python
Python的in,is和id函数代码实例
2020/04/18 Python
高级电工工作职责
2013/11/21 职场文书
银行财务部实习生的自我鉴定
2013/11/27 职场文书
汽车技术服务英文求职信范文
2014/01/02 职场文书
我的画教学反思
2014/04/28 职场文书
2014年人民警察入党思想汇报
2014/10/12 职场文书
小学数学新课改心得体会
2016/01/22 职场文书
二年级作文之动物作文
2019/11/13 职场文书
用 Python 元类的特性实现 ORM 框架
2021/05/19 Python
win10滚动条自动往上跑怎么办?win10滚动条自动往上跑的解决方法
2022/08/05 数码科技