js基本操作 陣列去重

2021-09-17 03:18:50 字數 1022 閱讀 3926

1. 臨時陣列儲存(其實這裡面還沒考慮到陣列裡面巢狀陣列/物件的情況)

把去重後的結果放在乙個臨時陣列中, 對原來陣列的元素與臨時陣列元素比較, 臨時陣列中不存在這個元素的, 放入臨時陣列。

function unique (arr) 

})return result;

}

2. 利用物件去重(當陣列的鍵為 11, '11'時, 會保留第乙個出現的值)

建立乙個新的陣列存放結果, 和乙個空的物件。for迴圈時, 每次取出乙個元素與物件進行對比, 如果這個元素不重複, 則把它存放到結果陣列中, 同時把這個元素的內容作為乙個物件的屬性, 並賦值, 存入物件中。

function unique (arr) 

arr.map(function (item) ;

}) return result;

}

3. 先排序, 後去重

先把陣列排序, 然後比較相鄰的兩個值。排序的時候用原生的 sort 方法, js引擎內部使用的是快速排序。

function unique(arr) }})

return result;

}var arr = [99, 88, 22, 22, 44, 88, 99, '99']

console.log(unique(arr));

4. 利用 es6 的 set 物件 和 array.from 方法
function unique (arr) 

var arr = [99, 88, 22, 22, 44, 88, 99, '99']

console.log(unique(arr));

5.利用 filter 和 map 物件
function unique(arr) 

});}var arr = [99, 88, 22, 22, 44, 88, 99, '99']

console.log(unique(arr));

js陣列操作 陣列扁平化

陣列的扁平化,就是將乙個巢狀多層的陣列 巢狀可以是任何層數 轉換為只有一層 或者指定層 的陣列。這個操作在實際開發過程還是有一定的需求場景的。在es6中已經提供了實現這個功能的方法,本文討論了模擬實現的方案。關鍵字 模擬實現 array.prototype.flat 本文介紹了es6中給陣列提供的f...

javascript陣列之基本操作 陣列屬性

基本操作 一 訪問資料元素 陣列的值可以通過自然數索引訪問進行讀寫操作 1.單位陣列 陣列名 下標索引 2.多維陣列 陣列名 外層陣列下標 內層元素下標 3.特性 陣列長度是彈性的,可自由伸縮 陣列下標從0開始 下標型別 數值 非數值 為字串 生成關聯陣列 下標作為物件屬性的名字 陣列元素可以新增到...

MySQL基本操作 資料操作

刪除資料 更新字段 1.插入指定字段值 insert into 表名 字段列表 values 對應字段值列表 2.向表中所有字段插入資料 insert into 表名 values 按表結構寫對應資料 insert into my teacher values liwei 20 1.查詢表中全部資料...