最近在做项目的过程中总是会遇到数据数组的去重问题,经过程序的多次修改现总结如下:
数据去重
var zdata = []; cityaname = result.aname; isp_cityname = $('.isp_cityname' + monitorip_arr[num]).html(); if (zdata[cityaname]) { zdata[cityaname][zdata[cityaname].length] = {"value" : result.totaltime,"name" : isp_cityname, "stateInitColor":"3"}; } else { zdata[cityaname] = []; zdata[cityaname][0] = {"value":result.totaltime, "name" : isp_cityname, "stateInitColor":"5"}; }
php也可以用这个思想,而且php的要比js的简单的多。。。
数组去重
//第二种方法 Array.prototype.distinct=function(){ var newArr=this.concat().sort(),self=this; newArr.sort(function(a,b){ var n; if(a===b){ n=self.indexOf(a); self.splice(n,1); } }); return self; } console.log([1,2,2,3,'5',6,5,6,6,15,5,'5',5,'',' '].distinct());