国产探花免费观看_亚洲丰满少妇自慰呻吟_97日韩有码在线_资源在线日韩欧美_一区二区精品毛片,辰东完美世界有声小说,欢乐颂第一季,yy玄幻小说排行榜完本

首頁(yè) > 編程 > JavaScript > 正文

JavaScript幾種數(shù)組去掉重復(fù)值的方法推薦

2019-11-20 10:16:25
字體:
來(lái)源:轉(zhuǎn)載
供稿:網(wǎng)友

數(shù)組去重復(fù)是一個(gè)常見的需求,我們暫時(shí)考慮同類型的數(shù)組去重復(fù)。主要是理清思路和考慮下性能。以下方法,網(wǎng)上基本都有,這里只是簡(jiǎn)單地總結(jié)一下。

思路:

1.遍歷數(shù)組,一一比較,比較到相同的就刪除后面的
2.遍歷數(shù)組,一一比較,比較到相同的,跳過(guò)前面重復(fù)的,不相同的放入新數(shù)組
3.任取一個(gè)數(shù)組元素放入新數(shù)組,遍歷剩下的數(shù)組元素任取一個(gè),與新數(shù)組的元素一一比較,如果有不同的,放入新數(shù)組。
4.遍歷數(shù)組,取一個(gè)元素,作為對(duì)象的屬性,判斷屬性是否存在

1. 刪除后面重復(fù)的:

function ov1(arr){  //var a1=((new Date).getTime())  for(var i=0;i<arr.length;i++)    for(var j=i+1;j<arr.length;j++)      if(arr[i]===arr[j]){arr.splice(j,1);j--;}        //console.info((new Date).getTime()-a1)          return arr.sort(function(a,b){return a-b});}

2. 這個(gè)是常規(guī)的方法,比較好理解,如果相同則跳出循環(huán)

function ov2(a) {  //var a1=((new Date).getTime())  var b = [], n = a.length, i, j;  for (i = 0; i < n; i++) {    for (j = i + 1; j < n; j++)      if (a[i] === a[j]){j=false;break;}    if(j)b.push(a[i]);    }  //console.info((new Date).getTime()-a1)    return b.sort(function(a,b){return a-b});} 

3. 這個(gè)我花了好長(zhǎng)時(shí)間明白的,這里j循環(huán)雖然繼續(xù)了,但是i值已經(jīng)改變了。就等于是一個(gè)新的i循環(huán):

function ov3(a) {  //var a1=((new Date).getTime())  var b = [], n = a.length, i, j;  for (i = 0; i < n; i++) {    for (j = i + 1; j < n; j++)    if (a[i] === a[j])j=++i  b.push(a[i]);}  //console.info((new Date).getTime()-a1)    return b.sort(function(a,b){return a-b});}   

4. 保證新數(shù)組中的都是唯一的

function ov4(ar){//var a1=((new Date).getTime())  var m=[],f;  for(var i=0;i<ar.length;i++){  f=true;   for(var j=0;j<m.length;j++)  if(ar[i]===m[j]){f=false;break;};  if(f)m.push(ar[i])}//console.info((new Date).getTime()-a1)    return m.sort(function(a,b){return a-b});}

5. 用對(duì)象屬性

	function ov5(ar){	//  var a1=(new Date).getTime()			var m,n=[],o= {};			for (var i=0;(m= ar[i])!==undefined;i++)			if (!o[m]){n.push(m);o[m]=true;}	//  console.info((new Date).getTime()-a1)  		return n.sort(function(a,b){return a-b});;		}

以上這篇JavaScript幾種數(shù)組去掉重復(fù)值的方法推薦就是小編分享給大家的全部?jī)?nèi)容了,希望能給大家一個(gè)參考,也希望大家多多支持武林網(wǎng)。

發(fā)表評(píng)論 共有條評(píng)論
用戶名: 密碼:
驗(yàn)證碼: 匿名發(fā)表
主站蜘蛛池模板: 枞阳县| 乐业县| 延安市| 宜君县| 新安县| 夏河县| 方城县| 松桃| 卢氏县| 东明县| 陈巴尔虎旗| 马边| 阳泉市| 宁都县| 鲁山县| 甘德县| 云龙县| 万源市| 巴青县| 林州市| 额尔古纳市| 井研县| 和平县| 富蕴县| 上林县| 行唐县| 义乌市| 辉县市| 沂水县| 景宁| 响水县| 电白县| 江川县| 洛阳市| 集贤县| 工布江达县| 虹口区| 葵青区| 临江市| 尼木县| 清水河县|