日本不卡不码高清免费观看,久久国产精品久久w女人spa,黄色aa久久,三上悠亚国产精品一区二区三区

您的位置:首頁技術文章
文章詳情頁

JavaScript中數組去重的5種方法

瀏覽:213日期:2023-10-22 13:43:07

正常情況下,數據去重的工作一般都是由后端同事來完成的,但是前端也要掌握好處理數據的能力,萬一去重的工作交給我們大前端處理,我們也不能慫呀。現在我總結了一些去重的方法,希望對大家有點幫助。

方法一:new Set()實現數組去重

ES6 提供了新的數據結構 Set,它類似于數組,但是成員的值都是唯一的,沒有重復的值。 Set 本身是一個構造函數,用來生成 Set 數據結構。Set函數可以接受一個數組,用于初始化。根據 Set的數據特性,我們可以實現數組去重。

let list = [1, 1, ’a’, ’a’, true, true, false, false, null, ’’, null, ’’, undefined, undefined];let list1 = Array.from(new Set(list)); // [ 1, 'a', true, false, null, '', undefined ]let list2 = [...new Set(list)]; // [ 1, 'a', true, false, null, '', undefined ]

方法二:some()+循環去重

some() 方法用于檢測數組中的元素是否滿足指定條件(函數提供) 。 如果有一個元素滿足條件,則表達式返回true , 剩余的元素不會再執行檢測。 如果沒有滿足條件的元素,則返回false。 我們可以定義一個新數組來承接沒有重復的數據,遍歷原始數組的時候,用新數組來判斷數據是否已經出現過。

function distinct(list) { let result = [list[0]];// 用于承接沒有重復的數據,初始時將原始數組的第一個值賦給它。 for (let i = 1; i < list.length; i++) { // 判斷結果數組中是否存在一樣的值,若果沒有的話則將數據存入結果數組中。 if (!(result.some(val => list[i] === val))) { result.push(list[i]); } } return result; }let arr = [1, 1, ’a’, ’a’, true, true, false, false, null, ’’, null, ’’, undefined, undefined];distinct(arr); // [ 1, 'a', true, false, null, '', undefined ]

方法三:雙重for循環去重

雙重for循環,第一層循環確保數組中的每一項都能被比較,第二層循環確保被比較項后的每一項都能跟被比較項比較。

function distinct2(list) { for (let i = 0; i < list.length; i++) { for (let j = i + 1; j < list.length; j++) { // 后面數據的若跟前一項數據相同,則重復,需要去除。 if (list[i] === list[j]) {list.splice(j, 1); // 去除后面的相同項j--; } } } return list;}let arr = [1, 1, ’a’, ’a’, true, true, false, false, null, ’’, null, ’’, undefined, undefined];distinct2(arr); // [ 1, 'a', true, false, null, '', undefined ]

方法四:hasOwnProperty()方法去重

hasOwnProperty() 方法用來檢測一個屬性是否是對象的自有屬性,而不是從原型鏈繼承的。如果該屬性是自有屬性,那么返回 true,否則返回 false。

function unique(arr) { var obj = {}; // 用來記錄數組中的數據 return arr.filter(function(item, index, arr){ // 如果記錄對象中存在某個數據,則返回false過濾掉;否則obj進行記錄并篩選出來 return obj.hasOwnProperty(typeof item + item) ? false : (obj[typeof item + item] = true) })}let arr = [1,1,’true’,’true’,true,true,15,15,false,false, undefined,undefined, null,null, NaN, NaN,’NaN’, 0, 0, ’a’, ’a’,{},{}];unique(arr) // [ 1, 'true', true, 15, false, undefined, null, NaN, 'NaN', 0, ’a’, {}]

方法五:利用filter()+indexOf()方法去重

indexOf() 方法可返回某個指定的字符串值在字符串中首次出現的位置。

function unique(arr) { return arr.filter(function(item, index, arr) { // 從數組0位開始查,如果當前元素在原始數組中的第一個索引==當前索引值,說明它是第一次出現。 return arr.indexOf(item, 0) === index; });}let list = [1, 1, ’a’, ’a’, true, true, false, false, null, ’’, null, ’’, undefined, undefined];unique(list); // [ 1, 'a', true, false, null, '', undefined ]

此外,數組去重還可以利用filter()、includes()等方法實現,但是思路都跟上面幾種方法類似,這里就不一一列舉了。

以上就是JavaScript中數組去重的5種方法的詳細內容,更多關于JavaScript中數組去重的資料請關注好吧啦網其它相關文章!

標簽: JavaScript
相關文章:
日本不卡不码高清免费观看,久久国产精品久久w女人spa,黄色aa久久,三上悠亚国产精品一区二区三区
电影91久久久| 日韩高清三区| 久久久久亚洲精品中文字幕| 欧美偷窥清纯综合图区| 亚欧成人精品| 日本成人手机在线| 欧美亚洲一级| 国产精品亲子伦av一区二区三区| 欧美另类中文字幕| 国产日韩欧美一区二区三区在线观看 | 99精品电影| 久久网站免费观看| 亚洲免费观看| 亚洲午夜国产成人| 欧美日韩xxxx| 高清一区二区三区| 99久久久久国产精品| 欧美成人精品| 国产精品一站二站| 蜜桃久久久久久| 99在线精品视频在线观看 | 亚洲精品看片| 亚洲2区在线| 久久久久九九精品影院| 性欧美69xoxoxoxo| 成人精品国产亚洲| аⅴ资源天堂资源库在线| 91精品久久久久久久久久不卡| 欧美a级片一区| 四虎精品一区二区免费| 美女视频网站久久| 久久久久久久久99精品大| 午夜欧美精品| 97久久超碰| 国产传媒在线| 蘑菇福利视频一区播放| 国产欧美日韩免费观看| 国产精品久久久亚洲一区| 老牛影视精品| 蜜芽一区二区三区| 欧美精品不卡| 99久久亚洲精品蜜臀| 蜜桃视频一区二区三区在线观看 | 欧美午夜不卡| 欧美日一区二区三区在线观看国产免 | 成人羞羞在线观看网站| 国产精品嫩草99av在线| 99国产精品久久久久久久| 日韩精品免费观看视频| 久久久久久一区二区| 午夜亚洲福利在线老司机| 国产欧美日韩一区二区三区在线| 日韩大片免费观看| 国产婷婷精品| 99在线精品免费视频九九视 | 久久久91麻豆精品国产一区| 男女激情视频一区| 亚洲精品影视| 蜜臀av在线播放一区二区三区 | 国产精品xxx在线观看| 精品国模一区二区三区| 亚洲精品动态| 91精品国产调教在线观看 | 毛片在线网站| 日日夜夜免费精品视频| 午夜久久中文| 欧美亚洲tv| 影视先锋久久| 久久av导航| 蜜臀91精品国产高清在线观看| 欧美亚洲色图校园春色| 久久久夜夜夜| 国产精品久久久亚洲一区| 中日韩男男gay无套| 国产suv精品一区二区四区视频 | 首页欧美精品中文字幕| 亚洲精品**中文毛片| 亚洲1区在线观看| 欧美日韩国产一区精品一区| 久久三级毛片| 亚洲va中文在线播放免费| 视频一区日韩精品| 国产高清一区| 国产精品久久久久蜜臀| 欧美日韩调教| 亚洲免费在线| 久久天堂精品| 精品美女视频 | 樱桃视频成人在线观看| 中文一区一区三区高中清不卡免费| 国模精品一区| 日本成人中文字幕在线视频| 日本黄色精品| 国产96在线亚洲| 综合亚洲色图| 久久男女视频| 日本不卡一二三区黄网| 欧美日韩国产在线一区| 国产精品一区免费在线| 中文字幕在线视频网站| 青草综合视频| 先锋影音久久久| 中文字幕人成乱码在线观看| 丝袜国产日韩另类美女| 久久亚洲专区| 久久一区欧美| 久久av免费| 国产视频一区二区在线播放| 综合激情在线| 国产精品腿扒开做爽爽爽挤奶网站| 日本不良网站在线观看| 国产专区精品| 精品国产美女a久久9999| 国产调教精品| 日本午夜精品| 亚洲三级网址| 美日韩精品视频| 美女网站一区| 麻豆91小视频| 国产精品免费不| 国产视频一区二| 欧美亚洲一区二区三区| 欧美日韩一区二区三区四区在线观看| 一区二区不卡| 亚洲理论在线| 日本不卡在线视频| 欧美视频久久| 国产毛片一区二区三区 | 蜜臀久久99精品久久久久宅男| 国产综合亚洲精品一区二| 免费在线小视频| 麻豆国产一区| 日韩国产一二三区| 日韩毛片网站| 精品视频99| 国产在线日韩| 黄色av日韩| а√天堂8资源在线| 久草精品视频| 国产aⅴ精品一区二区三区久久| 久久精品三级| 婷婷激情一区| 欧美日韩视频| 三级欧美韩日大片在线看| 亚洲影院天堂中文av色| 日韩国产高清在线| 国产精品3区| 日韩中文一区二区| 国产精品欧美三级在线观看 | 免费人成在线不卡| 日本欧美一区| 精品久久视频| 欧美一区二区三区高清视频| 激情欧美丁香| 国产精品普通话对白| 蜜臀久久久久久久| 国产精品亚洲综合色区韩国 | 精品视频久久| 欧美日韩尤物久久| 99国产精品久久久久久久成人热 | 国产激情在线播放| 国产亚洲在线| 国产视频一区二区在线播放| 亚洲深夜视频| 视频一区在线视频| 你懂的国产精品永久在线| 在线日韩一区| 日韩精品一区二区三区中文| 精品国产午夜| 高清不卡亚洲| 欧洲激情综合| 欧美日韩三区| 国产精品久久观看| 巨乳诱惑日韩免费av| 999精品在线| 98精品久久久久久久| 欧美精品影院| 中文在线日韩| 中文字幕乱码亚洲无线精品一区| 欧美日韩国产传媒| 日韩三级精品| 九九在线精品| 国产精品红桃| 狠狠干成人综合网| 日本不卡高清| 日韩免费小视频| 亚洲精品一区二区在线播放∴| 精品一区二区三区中文字幕 | 国内自拍视频一区二区三区| 激情视频一区二区三区| 欧美在线日韩| 欧美精品自拍| 成人污污视频| 综合亚洲视频| 精品欧美视频| 蜜桃av一区二区| 久久久久久一区二区| 日韩高清不卡一区二区| 欧美日韩在线二区| 久久免费精品|