javascript數(shù)組去重的方法

今天小編給大家分享一下javascript數(shù)組去重的方法的相關(guān)知識點,內(nèi)容詳細,邏輯清晰,相信大部分人都還太了解這方面的知識,所以分享這篇文章給大家參考一下,希望大家閱讀完這篇文章后有所收獲,下面我們一起來了解一下吧。

成都創(chuàng)新互聯(lián)公司主要為客戶提供服務(wù)項目涵蓋了網(wǎng)頁視覺設(shè)計、VI標(biāo)志設(shè)計、成都全網(wǎng)營銷、網(wǎng)站程序開發(fā)、HTML5響應(yīng)式成都網(wǎng)站建設(shè)手機網(wǎng)站制作、微商城、網(wǎng)站托管及網(wǎng)站維護、WEB系統(tǒng)開發(fā)、域名注冊、國內(nèi)外服務(wù)器租用、視頻、平面設(shè)計、SEO優(yōu)化排名。設(shè)計、前端、后端三個建站步驟的完善服務(wù)體系。一人跟蹤測試的建站服務(wù)標(biāo)準(zhǔn)。已經(jīng)為活動板房行業(yè)客戶提供了網(wǎng)站推廣服務(wù)。

第1個功能:數(shù)組去重。

實現(xiàn)方案1:

思路:對待去重的數(shù)組arr進行for循環(huán)遍歷,然后在新的數(shù)組newArr中去查找當(dāng)前被遍歷的元素arr[i],如果返回值為-1,說明在新的數(shù)組中還沒有出現(xiàn)過當(dāng)前被遍歷的元素arr[i],則把該元素放到新的數(shù)組中。當(dāng)數(shù)組arr遍歷完以后,新數(shù)組newArr就是去重以后的數(shù)組。

var arr = [1, 4, 7, 4, 3, 2, 1, 4, 7];

var newArr = [];

for(var i = 0; i < arr.length; i++) {

if(newArr.indexOf(arr[i]) === -1) {

newArr.push(arr[i]);

}

}

console.log(newArr);

實現(xiàn)方案2:

思路:該方案和方案1思路相同,只不過是使用reduce方法進行遍歷。

var arr = [1, 4, 7, 4, 3, 2, 1, 4, 7];

var newArr = arr.reduce((newArr, current) => {

if(newArr.indexOf(current) === -1) {

newArr.push(current);

}

return newArr;

}, []);

console.log(newArr);

實現(xiàn)方案3:

思路:當(dāng)前方案使用了ES6新增的set數(shù)據(jù)解構(gòu)的去重特性,然后在將生成的set對象轉(zhuǎn)換成數(shù)組。

var arr = [1, 4, 7, 4, 3, 2, 1, 4, 7];

var newArr = Array.from(new Set(arr));

console.log(newArr);

第2個功能:在數(shù)組中找出最小值(或者最大值)。

實現(xiàn)方案1:

思路:假設(shè)第一個數(shù)組元素是最小值,然后對數(shù)組后面的元素進行遍歷、判斷,如果當(dāng)前被遍歷的元素小于iMin變量的值,說明iMin變量的值還不是最小值,則將當(dāng)前遍歷的元素值替換掉iMin變量的值。當(dāng)循環(huán)結(jié)束,iMin變量的值就是數(shù)組中最小的值。

var arr = [23, 45, 40, 30, 12];

var iMin = arr.shift();

arr.forEach((v) => {

iMin = v < iMin ? v : iMin;

});

console.log(iMin);

實現(xiàn)方案2:

思路:利用Math.min()方法求最小值,但是該方法的參數(shù)是一個數(shù)值列表,而不是一個數(shù)組,故使用ES6新增的擴展運算符將數(shù)組轉(zhuǎn)換成列表,然后傳遞到Math.min()方法中去即可。

var arr = [23, 45, 40, 30, 12];

var iMin = Math.min(...arr);

console.log(iMin);

第3個功能:交換兩個變量的值。

實現(xiàn)方案1:

思路:將變量a的值給到臨時變量temp,然后再將變量b的值給變量a,最后再將臨時變量temp的值給變量b,至此完成變量a和變量b交換值的功能。

var a = 4, b = 6;

var temp = a;

a = b;

b = temp;

console.log(a , b);

實現(xiàn)方案2:

思路:利用ES6的數(shù)組解構(gòu)方法,實現(xiàn)在不使用第三個變量的情況下,完成變量a和變量b的數(shù)據(jù)交換。

var a = 4, b = 6;

[a, b] = [b, a];

console.log(a, b);

以上就是“javascript數(shù)組去重的方法”這篇文章的所有內(nèi)容,感謝各位的閱讀!相信大家閱讀完這篇文章都有很大的收獲,小編每天都會為大家更新不同的知識,如果還想學(xué)習(xí)更多的知識,請關(guān)注創(chuàng)新互聯(lián)行業(yè)資訊頻道。

網(wǎng)頁名稱:javascript數(shù)組去重的方法
網(wǎng)站鏈接:http://muchs.cn/article46/iehdeg.html

成都網(wǎng)站建設(shè)公司_創(chuàng)新互聯(lián),為您提供App設(shè)計、ChatGPT、網(wǎng)站改版網(wǎng)站內(nèi)鏈、面包屑導(dǎo)航、企業(yè)網(wǎng)站制作

廣告

聲明:本網(wǎng)站發(fā)布的內(nèi)容(圖片、視頻和文字)以用戶投稿、用戶轉(zhuǎn)載內(nèi)容為主,如果涉及侵權(quán)請盡快告知,我們將會在第一時間刪除。文章觀點不代表本網(wǎng)站立場,如需處理請聯(lián)系客服。電話:028-86922220;郵箱:631063699@qq.com。內(nèi)容未經(jīng)允許不得轉(zhuǎn)載,或轉(zhuǎn)載時需注明來源: 創(chuàng)新互聯(lián)

成都網(wǎng)站建設(shè)公司