在前端工作中,數(shù)組算是我們常見的數(shù)據(jù)格式,我們很多時候都需要對數(shù)組進(jìn)行大量的操作,數(shù)組去重自然也是很重要的問題,文匯軟件小編就跟大家分享下數(shù)組如何去重。
第一種:雙重for循環(huán),即新建一個空的數(shù)組,使用兩個for循環(huán)分別讓他們錯位進(jìn)行對比,如果數(shù)據(jù)相同則定義一個變量為true,最后將所有不為true的對象推進(jìn)新的數(shù)組中
這里上面是原來沒有去重的值,下面是處理后的結(jié)果
第二種:也是雙重for循環(huán)。不同的是這是兩個數(shù)組分別用進(jìn)行相互比較,也是設(shè)置一個變量,如果值相同則使用break打斷這次的循環(huán),最后循環(huán)出的內(nèi)容在推進(jìn)新數(shù)組_arr.push中
與上面一樣上面是沒有去重的值(此后不再贅述),下面為處理后的值
第三種:是使用es5的includes方法判斷數(shù)組中是否存在,先試用foreach遍歷數(shù)組,然后再用includes方法判斷數(shù)組中是否存在,不存在則推到新數(shù)組,不存在返回-1
第四種:與第三種差不多使用indexof判斷數(shù)組中的索引值(es5)不存在返回-1
第五種:使用sort進(jìn)行排序去重,如果是空數(shù)組或者最后一個與當(dāng)前不一致則推出新數(shù)組
第六種使用es6語法展開運算符...,在使用new Set()會保證內(nèi)部的成員唯一,并推入新的數(shù)組
小編這里一共會六種數(shù)組去重的方式,如果各位讀者還有別的歡迎和小編一起交流,如想關(guān)注就來文匯軟件吧