三亞建設(shè)工程信息網(wǎng)站外鏈交換平臺(tái)
💌 所屬專欄:【JavaScript隨手筆記】
😀 作??者:我是夜闌的狗🐶
🚀 個(gè)人簡介:一個(gè)正在努力學(xué)技術(shù)的CV工程師,專注基礎(chǔ)和實(shí)戰(zhàn)分享 ,歡迎咨詢!
💖 歡迎大家:這里是CSDN,我總結(jié)知識(shí)的地方,喜歡的話請(qǐng)三連,有問題請(qǐng)私信 😘 😘 😘
文章目錄
- 前言
- 一、方法一:數(shù)組拼接
- 二、方法二:數(shù)組轉(zhuǎn)字符串
- 總結(jié)
前言
??大家好,又見面了,我是夜闌的狗🐶,本文是專欄【JavaScript隨手筆記】專欄的第4篇文章;
??今天的需求中要到兩個(gè)數(shù)組的比較,不相同則進(jìn)行覆蓋,相同則不操作,所以只要對(duì)比多兩個(gè)數(shù)組之間的差異即可;
??專欄地址:【JavaScript隨手筆記】 , 此專欄是我是夜闌的狗對(duì)JS數(shù)據(jù)處理的總結(jié),希望能夠加深自己的印象,以及幫助到其他的小伙伴😉😉。
??如果文章有什么需要改進(jìn)的地方還請(qǐng)大佬不吝賜教👏👏。
一、方法一:數(shù)組拼接
??可以利用concat
函數(shù)對(duì)兩個(gè)數(shù)組進(jìn)行拼接一個(gè)數(shù)組,再用filter
函數(shù)過濾數(shù)組并將差異返回成一個(gè)新的數(shù)組。再對(duì)新數(shù)組判定就能知道兩個(gè)數(shù)組是否有差異了;
- 差異比較方法:
getArrDifference: function(arr1, arr2){return arr1.concat(arr2).filter(function(value, i, arr){return arr.indexOf(value) === arr.lastIndexOf(value);})
}
- 演示示例:
??可以根據(jù)不同的需要來對(duì)filter
函數(shù)進(jìn)行處理,由于這里只能識(shí)別出兩個(gè)數(shù)組有差異即可,就沒有做過多的處理; 注意:filter()不會(huì)對(duì)空數(shù)組進(jìn)行檢測、不會(huì)改變原始數(shù)組。
var list1 = ["Engineer1", "Engineer2", "Engineer3", "Engineer4", "Engineer5"];var list2 = ["Engineer1", "Engineer2", "Engineer1", "Engineer5"];var list3 = ["Engineer1", "Engineer3", "Engineer5"];var list4 = ["Engineer1", "Engineer4", "Engineer5"];console.log(that.getArrDifference(list1,list2)); console.log(that.getArrDifference(list3, list4));
- 運(yùn)行結(jié)果:
二、方法二:數(shù)組轉(zhuǎn)字符串
??相比第一種方法,第二種比較簡單點(diǎn),只要用toString()
函數(shù)將需要比較的數(shù)組轉(zhuǎn)換成字符串,再對(duì)比即可;
- 差異比較方法:
getArrDifference: function(arr1, arr2){return arr1.toString() != arr2.toString();},
- 演示示例:
??當(dāng)兩個(gè)字符串不相同時(shí),則返回true進(jìn)行處理即可;
var list1 = ["Engineer1", "Engineer2", "Engineer3", "Engineer4", "Engineer5"];var list2 = ["Engineer1", "Engineer2", "Engineer1", "Engineer5"];var list3 = ["Engineer1", "Engineer3", "Engineer5"];var list4 = ["Engineer1", "Engineer4", "Engineer5"];console.log(that.getArrDifference(list1,list2)); console.log(that.getArrDifference(list3, list4));
- 運(yùn)行結(jié)果:
總結(jié)
??感謝觀看,如果有幫助到你,請(qǐng)給題解點(diǎn)個(gè)贊和收藏,讓更多的人看到。🌹 🌹 🌹
??也歡迎你,關(guān)注我。👍 👍 👍
??原創(chuàng)不易,還希望各位大佬支持一下,你們的點(diǎn)贊、收藏和留言對(duì)我真的很重要!!!💕 💕 💕 最后,本文仍有許多不足之處,歡迎各位認(rèn)真讀完文章的小伙伴們隨時(shí)私信交流、批評(píng)指正!
更多專欄訂閱:
- 😀 【LeetCode題解(持續(xù)更新中)】
- 🚝 【Java Web項(xiàng)目構(gòu)建過程】
- 💛 【數(shù)字圖像處理】
- ? 【JavaScript隨手筆記】
- 🤩 【大數(shù)據(jù)學(xué)習(xí)筆記(華為云)】
- 🦄 【程序錯(cuò)誤解決方法(建議收藏)】
- 🚀 【軟件安裝教程】
訂閱更多,你們將會(huì)看到更多的優(yōu)質(zhì)內(nèi)容!!