久久r热视频,国产午夜精品一区二区三区视频,亚洲精品自拍偷拍,欧美日韩精品二区

您的位置:首頁(yè)技術(shù)文章
文章詳情頁(yè)

javascript - js判斷一個(gè)數(shù)組是否重復(fù)

瀏覽:208日期:2023-03-03 18:23:55

問(wèn)題描述

js怎么判斷一個(gè)數(shù)組對(duì)象里面有重復(fù)的值,并且刪除重復(fù)的值只保留一個(gè)比如 var arr = [{name:’a’},{name:’b’},{name:’c’},{name:’d’},{name:’a’}] 怎么對(duì)比

問(wèn)題解答

回答1:

可以雙for循環(huán)去找,用第一個(gè)和后面挨個(gè)對(duì)比,重復(fù)則刪除,在從第二個(gè)找,在向后對(duì)比,重復(fù)則刪除

const del = (arr) => { for( let i=0;i<arr.length;i++) {for(let j=i+1;j<arr.length;j++) { if (arr[i].id==arr[j].id) {arr.splice(j,1);i--; }} } return arr;}回答2:

突發(fā)奇想寫(xiě)的。。。不知道是否滿足所有要求。。。哈哈

方法一:

const del = (arr)=>{ let map = []; for(let i = 0; i < arr.length; i++) { let key = JSON.stringify(arr[i]); if(map.includes(key)) {arr.splice(i, 1);i--; } else {map.push(key); } } return arr;}

方法二:

const del = arr=>Array.from(new Set(arr.map(a=>JSON.stringify(a)))).map(a=>JSON.parse(a))回答3:

temp.indexOf ( arr[i].name ) = -1;

res.push(arr[i]);

數(shù)組去重方法比較多,你還可以有更好的方法

回答4:原材料

arr 是一維數(shù)組 而且元素是對(duì)象。 要處理的內(nèi)容是該對(duì)象下的 name 屬性。

var arr = [{name:’a’},{name:’b’},{name:’c’},{name:’d’},{name:’a’}]處理思路

遍歷他,然后在每次遍歷的 item 基礎(chǔ)上再遍歷一次 arr 挨個(gè)對(duì)比 如果發(fā)現(xiàn)重復(fù)就留個(gè)記錄

var logger = (a, b) => { console.group(’誰(shuí)重復(fù)了?’); console.log(’元素:’, a); console.log(’下標(biāo):’, b); console.groupEnd(); }// 遍歷 arr.filter((item, idx, its) => { // 一旦發(fā)現(xiàn)有重復(fù)的元素就返回 true (通過(guò) its.some 注意他的兩個(gè)參數(shù) e 和 idx2) // 無(wú)重復(fù)的過(guò)濾掉 return its.some((e, idx2) => {return (e.name === item.name && idx2 !== idx); });}).forEach(logger); ScreenShot

javascript - js判斷一個(gè)數(shù)組是否重復(fù)

回答5:

// 數(shù)組去重// 有key表示是復(fù)雜數(shù)組去重,根據(jù)數(shù)組中對(duì)象的屬性key來(lái)去重function arrUniq(arr, key) {

if (!Array.isArray(arr) || arr.length < 2) { return arr;}// 簡(jiǎn)單數(shù)組去重if (!key) { return Array.from(new Set(arr));}// 復(fù)雜數(shù)組去重var obj = {}, res = [];arr.forEach((item) => { if (!obj[item[key]]) {res.push(item);obj[item[key]] = true; }});return res;

}

標(biāo)簽: JavaScript
相關(guān)文章:
主站蜘蛛池模板: 泉州市| 楚雄市| 万全县| 资阳市| 德昌县| 天门市| 曲水县| 屯昌县| 从化市| 晋中市| 河池市| 百色市| 永年县| 永顺县| 台中县| 宜州市| 鹤庆县| 张家港市| 乌拉特中旗| 邓州市| 新营市| 昌黎县| 山东省| 马山县| 定兴县| 淳安县| 余干县| 婺源县| 新沂市| 河源市| 临沧市| 京山县| 台中县| 柳江县| 德惠市| 卓资县| 彰化市| 北流市| 额尔古纳市| 西和县| 团风县|