JS 陣列,陣列物件的合併去重方法

2021-08-26 12:09:40 字數 1275 閱讀 9708

這次對陣列的操作,我們使用es6的新語法來完成,所以在看下邊**之前,我們要了解我們下邊要用到的es6中的set集合,和for...of 方法:

es6提供了新的資料結構set,它類似於陣列,但是成員的值都是唯一的,沒有重複的值。

set函式可以接受乙個陣列(或類似陣列的物件)作為引數,用來初始化。

注意:

向set加入值的時候,不會發生型別轉變,所以 5 和 '5' 是兩個不同的值。set內部判斷兩個值是否相同,用的是類似於 "==="的演算法,但是區別是,在set內部認為nan 等於 nan ; 

set例項的屬性和方法:

set結構的例項有以下屬性。

set例項的方法分為兩大類:操作方法(用於運算元據)和遍歷方法(用於遍歷成員)。下面先介紹四個操作方法。

set內部的元素可以用 for...of 遍歷。

array.from()方法可以將set資料型別轉化為陣列型別。

1、陣列的合併去重

let arr1 = [3,5,2,3,6];

let arr2 = [5,2,4,6,8,7,9,2];

let arr = arr1.concat(arr2); //合併陣列

let arrnew= new set(arr); //通過set集合去重

console.log("arrnew",array.from(arrnew)); //將set集合轉化為陣列

結果

2、陣列物件的合併去重

let json1=[

, ,,]

let json2=[

, , ,]

let json = json1.concat(json2); //兩個陣列物件合併

let newjson = ; //盛放去重後資料的新陣列

for( let item1 of json)

} if(flag) }

console.log("newjson",newjson);

結果

js多層物件陣列 合併 JS物件陣列合併去重?

陣列去重,一般會在面試的時候才會碰到,要求手寫陣列去重方法的 如果是被提問到,陣列去重的方法有哪些?你能答出其中的10種,面試官很有可能對你刮目相看。在實際專案中碰到的陣列去重,一般都是後台去處理,很少讓前端處理陣列去重。雖然運用到的概率較低,但還是需要了解一下,以防面試的時候被問到。陣列去重的方法...

js多層物件陣列 合併 JS物件陣列合併去重?

陣列去重,一般會在面試的時候才會碰到,要求手寫陣列去重方法的 如果是被提問到,陣列去重的方法有哪些?你能答出其中的10種,面試官很有可能對你刮目相看。在實際專案中碰到的陣列去重,一般都是後台去處理,很少讓前端處理陣列去重。雖然運用到的概率較低,但還是需要了解一下,以防面試的時候被問到。陣列去重的方法...

JS陣列去重方法 支援物件陣列

陣列去重方法 1 支援基本資料型別組成的陣列 比如 let arr 1,5,6,6,1,true,true 6 1,1,5 呼叫 rd arr 返回 1,5,6,true,true 6 2 支援物件型別組成的陣列,但是要宣告是根據哪幾個物件屬性去進行判重的 比如 let arr 呼叫rd arr,n...