原生JS数组对象去重方法

function uniqueArr(arr){
    var hash = [];
    for(var i=0;i<arr.length;i++){
        var flag = true;
        for(var j=0;j<hash.length;j++){
            if(arr[i].ids == hash[j].ids){
                flag = false;
            }
        }
        if(flag){
            hash.push(arr[i]);
        }
    }
    return hash;
}

传入有重复对象的一个数组arr,使用对象中唯一标识ids区分对象。

原文地址:https://www.cnblogs.com/chuntian1989/p/9277694.html

时间: 2024-10-19 18:34:46

原生JS数组对象去重方法的相关文章

JS数组对象Array方法

1.concat() 连接两个或更多的数组.该方法不会改变现有的数组,而仅仅会返回被连接数组的一个副本. var arr = [1, 2, 3]; var arr1 = [11, 22, 33]; document.write(arr.concat(4, 5, arr1)); 输出结果: 1,2,3,4,5,11,22,33 2.join() 把数组的所有元素放入一个字符串.元素通过指定的分隔符进行分隔. var arr = ['item 1', 'item 2', 'item 3']; var

JS数组对象的方法

concat 返回一个新数组,这个数组是由两个或更多数组组合而成的 array.concat(b,c); join 返回字符串值,其中包括了连接到一起的数组的所有元素,元素由指定分隔符分割开来 array.join(',') pop 移除数组中的最后一个元素并返回该元素 array.pop(); push 将新元素添加到一个数组中,并返回数组的新长度值 array.push(a); shift 移除数组中的第一个元素并返回该元素 array.shift(); unshift 将指定的元素插入数组

js数组对象以及数组常用属性和方法

定义形式: var  arr1 = new Array(1,  5,  8,  7,  2,  10);  //定义了一个数组,其中具有6个数据 var  arr2 = new Array();                   //只是单纯地定义了一个数组(名),但没有给值(数据),即现在是空的 var  arr3 = [1,  5,  8,  7,  2,  10];  //同arr1,只是一种简写的定义法. var  arr4 = [ ];                  //同arr

原生JS取代一些JQuery方法的简单实现

原生JS取代一些JQuery方法的简单实现 下面小编就为大家带来一篇原生JS取代一些JQuery方法的简单实现.小编觉得挺不错的,现在就分享给大家,也给大家做个参考.一起跟随小编过来看看吧 1.选取元素 // jQuery var els = $('.el'); // Native var els = document.querySelectorAll('.el'); // Shorthand var $ = function (el) { return document.querySelect

原生 JS 中对象相关 API 合集

https://juejin.im/entry/58f8a705a0bb9f0065a4cb20 原文链接:https://microzz.com/2017/04/20/jsobject/ 原生 JavaScript 中对象相关 API 合集 - 对象篇.现在 jQuery 已经没有那么有优势了,原生 JS 赶紧学起来... -- 由microzz分享 Microzz [email protected] 主页 文章 标签 GitHub 关于我 掘金专栏 SegmentFault Vue音乐播放器

原生js获取鼠标坐标方法全面讲解-zmq

原生js获取鼠标坐标方法全面讲解:clientX/Y,pageX/Y,offsetX/Y,layerX/Y,screenX/Y 一.关于js鼠标事件综合各大浏览器能获取到坐标的属性总共以下五种:event.clientX/Yevent.pageX/Yevent.offsetX/Yevent.layerX/Yevent.screenX/Y 二.分别讲解如下: clientX/Y: clientX/Y获取到的是触发点相对浏览器可视区域左上角距离,不随页面滚动而改变 兼容性:所有浏览器均支持 page

JS数组的遍历方法

JS数组的遍历方法有两种: 第一种:一般的for循环,例如: 1 2 3 4 var a = new Array("first", "second", "third") for(var i = 0;i < a.length; i++) { document.write(a[i]+","); } 输出的结果:fitst,second,third 第一种:用for...in 这种遍历的方式,例如: 1 2 3 4 var a

js 数组中sort方法存在的问题

chrome中测试sort方法 发现排序失效,查过资料发现,js数组的sort方法总会以第一个字符的ASCII值来进行比较排序 解决办法一:给sort方法指定一个比较函数作为参数,如下图 解决办法二:自己一个排序算法,自己造轮子 原文地址:https://www.cnblogs.com/xingguozhiming/p/8996700.html

微信小程序学习Course 4-2 JS数组对象学习

微信小程序学习Course 3-2 JS数组对象学习 本节主要介绍JS中的数组. 3-2.1 数组的声明 数组声明的方式多种,如下例.一般我们可以先创建一个空数组,然后再填充. var names = [];//创建一个空数组 var names = ["sadad","asdsad"];//创建一个包含两个字符串的数组 var names = new Array(3);//创建一个包含三个元素的数组 3-2.2 数组的增添 数组有多种增添方式,一种是栈方式,另一种