本文實例分析了JavaScript去掉數組重復項的方法。分享給大家供大家參考,具體如下:
利用JavaScript的object的特性,我們可以非常容易的實現將一個數組的重復項去掉。
object的特性是:key一定是唯一的。
把數組重復項去掉:
1 將數組轉換成一個object對象,數組的值作為object對象的 key
因為key是唯一的,碰到重復的數組值的時候,object不會添加key
2 將object對象轉換成數組,key為數組的值。
在之前的重復數組,每一個值實際上對應object只有一個key,這樣在還原到數組的時候,重復值就去掉了
<script> /*用object的特性去掉數組的重復項: 1 把數組轉化成oject對象,用數組的值當作obj的key 2 把object再轉換成數組 */ // 傳入數組 返回object對象 var toObj = function( arr ){ obj = {}; for(var temp in arr){ //對arr的每一個值添加到obj的key,value都是true obj[arr[temp]] = true; } return obj; }; // 傳入obj對象 返回arr數組 var toArr = function( obj ){ var arr = []; for(var temp in obj){ //把所有的key push到數組當中 arr.push(temp); } return arr; }; //把兩個方法聯合起來 var getUniq = function(arr){ return toArr( toObj(arr) ); }; var arr = [1,1,2,2,3,3,4,4,5,5,5,6,6,6,6,6,6,5,4,3,54,8,11]; console.log(getUniq(arr)); </script>
使用在線HTML/CSS/JavaScript代碼運行工具:http://tools.jb51.net/code/HtmlJsRun,運行結果如下:
PS:這里再為大家提供幾款相關工具供大家參考使用:
在線去除重復項工具:
http://tools.jb51.net/code/quchong
在線文本去重復工具:
http://tools.jb51.net/aideddesign/txt_quchong
在線動畫演示插入/選擇/冒泡/歸并/希爾/快速排序算法過程工具:
http://tools.jb51.net/aideddesign/paixu_ys
更多關于JavaScript相關內容感興趣的讀者可查看本站專題:《JavaScript數組操作技巧總結》、《JavaScript字符與字符串操作技巧總結》、《JavaScript遍歷算法與技巧總結》、《JavaScript排序算法總結》、《JavaScript查找算法技巧總結》、《JavaScript數學運算用法總結》、《JavaScript數據結構與算法技巧總結》及《JavaScript錯誤與調試技巧總結》
希望本文所述對大家JavaScript程序設計有所幫助。
聲明:本網頁內容旨在傳播知識,若有侵權等問題請及時與本網聯系,我們將在第一時間刪除處理。TEL:177 7030 7066 E-MAIL:11247931@qq.com