JS实现数组去重复值的方法示例


Posted in Javascript onFebruary 18, 2017

本文实例讲述了JS实现数组去重复值的方法。分享给大家供大家参考,具体如下:

运行效果图如下:

JS实现数组去重复值的方法示例

完整实例代码如下:

<!DOCTYPE html PUBLIC "-//W3C//DTD XHTML 1.0 Transitional//EN"
"http://www.w3.org/TR/xhtml1/DTD/xhtml1-transitional.dtd">
<html xmlns="http://www.w3.org/1999/xhtml">
<head>
<meta http-equiv="Content-Type" content="text/html; charset=utf-8" />
<title>Test</title>
<script type="text/javascript" language="javascript" >
Array.prototype.distinct = function(){
 var $ = this;
 var o1 = {}; //存放去重复值
 var o2 = {}; //存放重复值
 var o3 = []; //存放重复值
 var o; //数组单个变量
 for(var i=0;o = $[i];i++){
 if(o in o1){
  if(!(o in o2)) o2[o] = o;
  delete $[i];
 }else{
  o1[o] = o;
 }
 }
 $.length = 0; //清空原数组
 for(o in o1){
 $.push(o);
 }
 for(o in o2){
 o3.push(o);
 }
 return o3;
}
var a = [2,2,2,3,3,3,4,4,5,6,7,7];
console.log("原数组:" + a); //2,2,2,3,3,3,4,4,5,6,7,7
console.log("有重复的元素是:" + a.distinct()); //2,3,4,7
console.log("整理后的数组是:" + a);      //2,3,4,5,6,7
console.log("整理后的长度是:" + a.length)    //6
</script>
</head>
<body>
</body>
</html>
Javascript 相关文章推荐
jquery.combobox中文api和例子,修复了上面的小bug
Mar 28 Javascript
深入剖析JavaScript中的枚举功能
Mar 06 Javascript
node.js中的fs.linkSync方法使用说明
Dec 15 Javascript
浅谈JavaScript对象的创建方式
Jun 13 Javascript
js清除浏览器缓存的几种方法
Mar 15 Javascript
JavaScript阻止表单提交方法(附代码)
Aug 15 Javascript
mui back 返回刷新页面的实例
Dec 06 Javascript
使用Vue做一个简单的todo应用的三种方式的示例代码
Oct 20 Javascript
基于layui内置模块(element常用元素的操作)
Sep 20 Javascript
layui数据表格 table.render 报错的解决方法
Sep 29 Javascript
深入webpack打包原理及loader和plugin的实现
May 06 Javascript
vue打包通过image-webpack-loader插件对图片压缩优化操作
Nov 12 Javascript
bootstarp modal框居中显示的实现代码
Feb 18 #Javascript
JS实现本地存储信息的方法(基于localStorage与userData)
Feb 18 #Javascript
JS表单数据验证的正则表达式(常用)
Feb 18 #Javascript
JavaScript实现的鼠标响应颜色渐变效果完整实例
Feb 18 #Javascript
JS设置时间无效问题的解决办法
Feb 18 #Javascript
js的OOP继承实现(必看篇)
Feb 18 #Javascript
jQuery仿IOS弹出框插件
Feb 18 #Javascript
You might like
php实现的一个很好用HTML解析器类可用于采集数据
2013/09/23 PHP
解决CodeIgniter伪静态失效
2014/06/09 PHP
Laravel框架数据库CURD操作、连贯操作总结
2014/09/03 PHP
PHP扩展Swoole实现实时异步任务队列示例
2019/04/13 PHP
收集的网上用的ajax之chat.js文件
2007/04/08 Javascript
键盘 keycode的值 javascript时触发事件时很有用的要素
2009/11/02 Javascript
js和jquery对dom节点的操作(创建/追加)
2013/04/21 Javascript
flash遮住div问题的正确解决方法
2014/02/27 Javascript
将HTML格式的String转化为HTMLElement的实现方法
2014/08/07 Javascript
JavaScript使用addEventListener添加事件监听用法实例
2015/06/01 Javascript
如何利用AngularJS打造一款简单Web应用
2015/12/05 Javascript
js生成随机颜色方法代码分享(三种)
2016/12/29 Javascript
浅谈微信JS-SDK 微信分享接口开发(介绍版)
2018/08/15 Javascript
vue移动端项目缓存问题实践记录
2018/10/29 Javascript
vue-router重写push方法,解决相同路径跳转报错问题
2020/08/07 Javascript
el-form 多层级表单的实现示例
2020/09/10 Javascript
html中创建并调用vue组件的几种方法汇总
2020/11/17 Javascript
JS实现鼠标移动拖尾
2020/12/27 Javascript
Javascript中的奇葩知识,你知道吗?
2021/01/25 Javascript
[50:59]2018DOTA2亚洲邀请赛 4.7 总决赛 LGD vs Mineski第四场
2018/04/10 DOTA
[01:59]游戏“zheng”当时试玩会
2019/08/21 DOTA
python排序函数sort()与sorted()的区别
2018/09/18 Python
通过shell+python实现企业微信预警
2019/03/07 Python
django用户登录验证的完整示例代码
2019/07/21 Python
Python小白不正确的使用类变量实例
2020/05/29 Python
POS解决方案:MUNBYN(热敏打印机、条形码扫描仪)
2020/06/09 全球购物
会计学财务管理专业个人的自我评价
2013/10/19 职场文书
会计顶岗实习心得
2014/01/25 职场文书
测控技术自荐信
2014/06/05 职场文书
班子查摆四风个人对照检查材料思想汇报
2014/10/04 职场文书
销售员岗位职责
2015/02/10 职场文书
2015年调度员工作总结
2015/04/30 职场文书
2016年党员承诺书范文
2016/03/24 职场文书
Python中OpenCV实现查找轮廓的实例
2021/06/08 Python
vue组件vue-esign实现电子签名
2022/04/21 Vue.js
详解SQL报错盲注
2022/07/23 SQL Server