在進行數組操作時往往會遇到去掉重複項的問題,下面簡單介紹下數組去重的方法,以及其執行效率
方法一
采用兩次循環
原理:拿目前的和他後面的比,如果後面的有重複的就幹掉
但是我們發現數組最後一項,後面沒有東西,那他就不用和後邊的比較了,是以我們隻要循環arr.length-1次就可以了
執行效率實在不敢恭維,我的電腦比這多就不能執行了
是以考慮用對象替代(對象的屬性名字不會重複)方法二
此方法執行效率較高,數組很多内容也不會浏覽器奔潰,但循環使用兩次
采用另一種方法:方法三
原理: 循環數組,把數組中的每一項當做obj對象的屬性名和屬性值存進來,
但是我們發現如果obj對象中已經存在了這個屬性名的話,那就說明數組重複了,那我們删除重複的項
不過經過測試這個方法和方法一效率差不多,不信可以嘗試下,故還是推薦方法二
對此封裝成方法
能力有限,希望能給大家帶來幫助