兩個(gè)數(shù)組去重的JS代碼
更新時(shí)間:2013年12月04日 16:40:43 作者:
這篇文章主要介紹了兩個(gè)數(shù)組去重的JS代碼,有需要的朋友可以參考一下
第一種:
function unique (arr){
var obj = {},newArr = [];
for(var i = 0;i < arr.length;i++){
var value = arr[i];
if(!obj[value]){
obj[value] = 1;
newArr.push(value);
}
}
return newArr;
}
這個(gè)方法把數(shù)組的值存入對象,所以,在數(shù)組存在對象隊(duì)員的時(shí)候,運(yùn)行失?。▽ο笞鳛閷ο蟮逆I會被轉(zhuǎn)化為字符串)。
第二種方法:
function unique (arr){
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--}
}
}
return arr;
}
即使傳入的數(shù)組包含對象,這個(gè)方法也支持,注意‘===',但是使用了嵌套循環(huán),性能會劣于第一種方法。
復(fù)制代碼 代碼如下:
function unique (arr){
var obj = {},newArr = [];
for(var i = 0;i < arr.length;i++){
var value = arr[i];
if(!obj[value]){
obj[value] = 1;
newArr.push(value);
}
}
return newArr;
}
這個(gè)方法把數(shù)組的值存入對象,所以,在數(shù)組存在對象隊(duì)員的時(shí)候,運(yùn)行失?。▽ο笞鳛閷ο蟮逆I會被轉(zhuǎn)化為字符串)。
第二種方法:
復(fù)制代碼 代碼如下:
function unique (arr){
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--}
}
}
return arr;
}
即使傳入的數(shù)組包含對象,這個(gè)方法也支持,注意‘===',但是使用了嵌套循環(huán),性能會劣于第一種方法。
您可能感興趣的文章:
- js數(shù)組去重的常用方法總結(jié)
- JS實(shí)現(xiàn)數(shù)組去重方法總結(jié)(六種方法)
- js數(shù)組去重的5種算法實(shí)現(xiàn)
- 高性能js數(shù)組去重(12種方法,史上最全)
- 史上最全JavaScript數(shù)組去重的十種方法(推薦)
- js實(shí)現(xiàn)數(shù)組去重、判斷數(shù)組以及對象中的內(nèi)容是否相同
- JavaScript數(shù)組去重的兩種方法推薦
- JS實(shí)現(xiàn)的合并多個(gè)數(shù)組去重算法示例
- JS實(shí)現(xiàn)的JSON數(shù)組去重算法示例
- JavaScript數(shù)組去重的五種方法
- js算法中的排序、數(shù)組去重詳細(xì)概述
- JS實(shí)現(xiàn)數(shù)組去重,顯示重復(fù)元素及個(gè)數(shù)的方法示例
- JS實(shí)現(xiàn)數(shù)組去重及數(shù)組內(nèi)對象去重功能示例
- JS實(shí)現(xiàn)的字符串?dāng)?shù)組去重功能小結(jié)
- JS實(shí)現(xiàn)字符串去重及數(shù)組去重的方法示例
- 關(guān)于js數(shù)組去重的問題小結(jié)
- js數(shù)組去重的方法總結(jié)
- JS數(shù)組去重的常用4種方法
相關(guān)文章
詳解ES6中的 Set Map 數(shù)據(jù)結(jié)構(gòu)學(xué)習(xí)總結(jié)
這篇文章主要介紹了詳解ES6中的 Set Map 數(shù)據(jù)結(jié)構(gòu)學(xué)習(xí)總結(jié),小編覺得挺不錯(cuò)的,現(xiàn)在分享給大家,也給大家做個(gè)參考。一起跟隨小編過來看看吧2018-11-11javascript+jQuery實(shí)現(xiàn)360開機(jī)時(shí)間顯示效果
這篇文章主要介紹了javascript+jQuery實(shí)現(xiàn)360開機(jī)時(shí)間顯示效果,在文中給大家提到了js實(shí)現(xiàn)時(shí)間倒計(jì)時(shí)的代碼,非常不錯(cuò),具有參考借鑒價(jià)值,需要的朋友可以參考下2017-11-11理運(yùn)用命名空間讓js不產(chǎn)生沖突避免全局變量的泛濫
為了避免變量之間的覆蓋與沖突,可以生成命名空間,命名空間是一種特殊的前綴,在不同的匿名函數(shù)中,根據(jù)功能聲明一個(gè)不同的命名空間2014-06-06javascript + jquery實(shí)現(xiàn)定時(shí)修改文章標(biāo)題
用javascript+jquery寫的一個(gè)定時(shí)器,定時(shí)修改文章標(biāo)題,需要的朋友可以參考下2014-03-03純JavaScript代碼實(shí)現(xiàn)文本比較工具
之前項(xiàng)目需求需要寫一個(gè)純js文本比較工具,在此小編把代碼分享在腳本之家平臺供大家參考2016-02-02JS點(diǎn)擊動態(tài)添加標(biāo)簽、刪除指定標(biāo)簽的代碼
這篇文章主要介紹了JS點(diǎn)擊動態(tài)添加標(biāo)簽、刪除指定標(biāo)簽的代碼,在文中給大家補(bǔ)充介紹了js 更加輪播圖圖片張數(shù)動態(tài)生成小圓點(diǎn)的方法,需要的朋友參考下實(shí)現(xiàn)代碼2018-04-04JavaScript動態(tài)添加css樣式和script標(biāo)簽
這篇文章主要介紹了JavaScript動態(tài)添加css樣式和script標(biāo)簽的相關(guān)資料,非常不錯(cuò),具有參考借鑒價(jià)值,需要的朋友可以參考下2016-07-07