Js数组去重复取唯一值

function isBigEnough(element)

{ return element >= 10; }

var filtered = [12, 5, 8, 130, 44].filter(isBigEnough);

// filtered is [12, 130, 44]

function onlyUnique(value, index, self)

{ return self.indexOf(value) === index; }

// usage example:

var a = [‘a‘, 1, ‘a‘, 2, ‘1‘];

var unique = a.filter( onlyUnique );// returns [‘a‘, 1, 2, ‘1‘]

// 比较好使的Function(不兼容IE7)

function unique(array)

{ return array.filter(function(el, index, arr) { return index == arr.indexOf(el); }); }

// 比较好使的Function(兼容IE7)

//去除数组中重复值

function getNoRepeat(s)

{ return s.sort().join(",,").replace(/(,|^)([^,]+)(,,\2)+(,|$)/g,"$1$2$4").replace(/,,+/g,",").replace(/,$/,"").split(","); }

var arr = ["北京", "上海", "天津", "武汉", "上海", "天津", "武汉", "北京", "上海", "天津", "武汉", "天津", "武汉", "天津", "武汉", "天津", "武汉", "北京", "上海", "天津", "武汉", "上海", "天津", "武汉", "北京", "上海", "天津", "武汉", "天津", "武汉", "天津", "武汉", "天津", "武汉", "北京", "上海", "天津", "武汉", "上海", "天津", "武汉", "北京", "上海", "天津", "武汉", "天津", "武汉", "天津", "武汉", "天津", "武汉"];

arr = getNoRepeat(arr); alert(arr.length);// 4

alert(arr.toString()); // "北京", "上海", "天津", "武汉"

时间: 2024-10-13 01:29:03

Js数组去重复取唯一值的相关文章

js 数组去重复、内置方法

1.使用js 数组去重复: 方法①: var arr=[1,2,1,5,2,3,5,1,6,9]; function deRepeat(){ var newArray=[]; var obj={}; var index=0; var len=arr.length; for(var i=0;i<len;i++){ if(obj[arr[i]]==undefined){//不存在 obj[arr[i]]=1; newArray[index++]=arr[i]; }else if(obj[arr[i]

awk与sort去重复取最值

文件a内容: 1     341     231     122     542     213     543     323     214     654     125     2345     655     12 想从文件a中得到第一列重复值中对应第二列的最大值和最小值.即: 最大值 1     342     543     544     655     234 最小值 1     122     213     214     125     12 一句程序的写法: 1.得到最

js 数组去重复

<!DOCTYPE html> <html lang="en"> <head> <meta charset="UTF-8"> <title>Document</title> <script type="text/javascript"> window.onload = function (){ var arr = [11,13,22,11,5,13,7]; fun

js 数组去重复键

Array.prototype.deleteEle = function() { var newArr = this; for (var i = newArr.length - 1; i >= 0; i--) { var targetNode = newArr[i]; for (var j = 0; j < i; j++) { if (targetNode == newArr[j]) { newArr.splice(i, 1); break; } } } return newArr; } 调用

js 数组去重复两种方法一看就懂

var arr=[1,1,2,2,3,5,2];function uniqueArr(arr){ var data=[]; for(var i=0;i<arr.length;i++){ if(data.indexOf(arr[i])<0){ data.push(arr[i]); } } return data;}console.log(uniqueArr(arr));var arr1=[1,2,2,5,5,4,5,6,3,36,52];function uniquearr(arr){ var

js 数组排除重复值(string)

前提:数组中的元素类型为:string 在网上看了许多高大尚的文章,还是解决不了我的string arry 的问题,只能怪自己脑残了,上代码: <!DOCTYPE html> <html xmlns="http://www.w3.org/1999/xhtml"> <head> <meta http-equiv="Content-Type" content="text/html; charset=utf-8"

javascript中数组去重复方式汇总

JavaScript中关于数组去重复的方式很多,下面汇总了常见的几种实现方式. 1 /*实现一:基于原型扩展*/ 2 Array.prototype.removeDuplicate = function() { 3 var arrObj = {}, 4 newArr = [], 5 len = this.length; 6 for(var i = 0; i < len; i++) { 7 var value = this[i], 8 type = (typeof value) + value;

高效率去掉js数组中重复项

Array类型并没有提供去重复的方法,如果要把数组的重复元素干掉,那得自己想办法: 1 function unique(arr) { 2 var result = [], isRepeated; 3 for (var i = 0, len = arr.length; i < len; i++) { 4 isRepeated = false; 5 for (var j = 0, len = result.length; j < len; j++) { 6 if (arr[i] == result

数组去重复算法

1.遍历法 var ary=[1,23,12,12,1,12,32,1,1]; function noRepetition(ary){ // 1.创建新数组 var newAry=[]; // 2.遍历老数组,拿到每个值,看新数组有这个值吗,没有添加进去, for(var i=0;i<ary.length;i++){ var cur=ary[i]; if (newAry.indexOf(cur)==-1){ indexOf IE8以前不支持, newAry.push(cur) } } // 3.