`

Js数组去重复取唯一值

    博客分类:
  • js
阅读更多
var ages = array.map(function(obj) { return obj.age; });
ages = ages.filter(function(v,i) { return ages.indexOf(v) == i; });

console.log(ages); //=> [17, 35]

 

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()); // "北京", "上海", "天津", "武汉"

 

 

分享到:
评论

相关推荐

    js过滤重复的数组元素

    javascript实现过滤数组中重复的元素,使得数组具有元素的唯一性

    JavaScript去掉数组重复项的方法分析【测试可用】

    本文实例分析了JavaScript去掉数组重复项的方法。分享给大家供大家参考,具体如下: 利用JavaScript的object的特性,我们可以非常容易的实现将一个数组的重复项去掉。 object的特性是:key一定是唯一的。 把数组重复...

    JS基于对象的特性实现去除数组中重复项功能详解

    本文实例讲述了JS基于对象的特性实现去除数组中重复项功能。分享给大家供大家参考,具体如下: 数组去重的方法有很多,不同的方法的效率也不相同。如前面文章JS实现的数组去除重复数据算法小结中就总结分析了4种实现...

    求两个数组的交集,配合去重方法使用.html

    // // 用原始数组里面的内容循环遍历放在,新建的空数组内部去查找。 // // 如果查找结果是-1表示空数组里面没有原始数组循环遍历的那一项,然后把遍历的哪一项push到空数组里。 // // 一直往空数组里面添加符合...

    JavaScript数组去重的几种方法

    有时候我们做项目的时候往往会需要把数组里面一些重复的项去掉,但是原生JS有排序,有筛选等等,但是就是没有数组去重怎么办呢? 这能怎么办,自己手动实现嘛。 数组不像对象和hash有唯一的标志特征(key)。所以,...

    【JavaScript源代码】JavaScript的一些小技巧分享.docx

    new Set()来过滤掉数组中重复的值,创建一个只有唯一值的新数组。 const array = [1, 1, 2, 3, 5, 5, 1] const uniqueArray = [...new Set(array)]; console.log(uniqueArray); > Result:(4) [1, 2, 3, 5] 这是...

    关于JavaScript数组去重的一些理解汇总

    Set 对象允许你存储任何类型的唯一值,无论是原始值或者是对象引用。 Set对象是值的集合,你可以按照插入的顺序迭代它的元素。 Set中的元素只会出现一次,即 Set 中的元素是唯一的。 关键字:任何类型都可以存储、...

    javascript数组去重小结

    最近为了换工作,准备下面试,开始回顾复习JavaScript相关的知识,昨天下午想到了数组去重的相关方法,干脆整理出几篇JavaScript算法文章,以备后用,此系列文章不定篇数,不定时间,想到哪写到哪,不保证正确性,不...

    JavaScript中数组去重的5种方法

    ES6 提供了新的数据结构 Set,它类似于数组,但是成员的值都是唯一的,没有重复的值。 Set 本身是一个构造函数,用来生成 Set 数据结构。Set函数可以接受一个数组,用于初始化。根据 Set的数据特性,我们可以实现...

    Python列表去重复项的N种方法(实例代码)

    在实际编程中,经常会遇到数组或列表去掉重复项,保持成员唯一性。实现方式有多种,比如新建列表来存储非重复项,或者在原有基础上删除掉重复的项,也可以利用数据结构来达到去重复。具体哪一种方法更好呢?以下约20...

    【大厂面试题】史上最详细的一线大厂前端面试题详解及其答案

    【大厂面试题】史上最详细的一线大厂前端...位数字保存在数组中,并把取剩后的数据递归重复取值,直到数据不足3位,把 剩 下一起存入数组中。 这时数组中按顺序保存从后到前的分割数据。实例中数组是[‘789’,’456’,

    11个教程中不常被提及的JavaScript小技巧(推荐)

    1、过滤唯一值 Set类型是在ES6中新增的,它类似于数组,但是成员的值都是唯一的,没有重复的值。结合扩展运算符(…)我们可以创建一个新的数组,达到过滤原数组重复值的功能。 const array = [1, 2, 3, 3, 5, 5, 1...

    array-uniq:创建一个没有重复的数组

    数组唯一 创建一个没有重复的数组 安装 $ npm install array-uniq 用法 import arrayUniq from 'array-uniq' ; arrayUniq ( [ 1 , 1 , 2 , 3 , 3 ] ) ; //=> [1, 2, 3] arrayUniq ( [ 'foo' , 'foo' , 'bar' , 'foo'...

    ArrayUtil:用于杂项的数组实用程序。 但有用的东西

    唯一地合并两个数组(即使是对象元素)。 ###Array.prototype.equals 两个数组的快速简单的真实比较。 ###Array.prototype.toObject 将数组转换为类似对象的数组。 ###Array.prototype.shuffle 打乱数组中的...

    technical-interview-js

    从两个数组获取唯一元素 按值对对象数组进行排序 从数组中删除元素 合并没有重复的数组 配对DNA-freeCodeCamp 号码 对范围内的所有数字求和 倒数 嘶嘶声 正则表达式 脊柱情况下返回字符串 替换字符串中的单词,保留...

    file-dedupe:使用MD5哈希值对文件进行重复数据删除

    根据文件大小和MD5哈希值对数据进行重复数据删除。 包括子目录支持。 用法 争论 targetDirectory :要在其中检查重复项的目录。 sourceDirectory :用于检查sourceDirectory和targetDirectory之间重复的唯一文件。...

    assert-unique:测试值是否没有重复

    断言唯一 测试值是否没有重复 assertUnique ( 3 , 'a' , 3 , 3 , true , 'a' ) ; // Error: 3 and "a" are duplicated. 安装 包管理器 npm install assert-unique bower install assert-unique var assertUnique ...

    浅谈JavaScript中ES6新增的Set和Map结构以及Array.from方法

    它类似于数组,但是成员的值都是唯一的,没有重复的值。 Set 本身是一个构造函数,用来生成 Set 数据结构。 只能接受数组,采用new的方式来实例化使用。 创建Set机构时,可以立即设置内容,但Set必须接受数组作为参数...

    awesome-micro-npm-packages:精选的小型npm软件包清单

    通过使用严格等式进行比较,从其他数组中排除所有值,从而返回仅包含第一个数组中唯一值的数组。 返回一个由指定输入填充的数组对象键和值映射到数组中。 -如果数组中存在任何传递的值,则返回true-比使用indexOf更...

Global site tag (gtag.js) - Google Analytics