JavaScript去掉數(shù)組重復項的方法分析【測試可用】
本文實例分析了JavaScript去掉數(shù)組重復項的方法。分享給大家供大家參考,具體如下:
利用JavaScript的object的特性,我們可以非常容易的實現(xiàn)將一個數(shù)組的重復項去掉。
object的特性是:key一定是唯一的。
把數(shù)組重復項去掉:
1 將數(shù)組轉換成一個object對象,數(shù)組的值作為object對象的 key
因為key是唯一的,碰到重復的數(shù)組值的時候,object不會添加key
2 將object對象轉換成數(shù)組,key為數(shù)組的值。
在之前的重復數(shù)組,每一個值實際上對應object只有一個key,這樣在還原到數(shù)組的時候,重復值就去掉了
<script>
/*用object的特性去掉數(shù)組的重復項:
1 把數(shù)組轉化成oject對象,用數(shù)組的值當作obj的key
2 把object再轉換成數(shù)組
*/
// 傳入數(shù)組 返回object對象
var toObj = function( arr ){
obj = {};
for(var temp in arr){
//對arr的每一個值添加到obj的key,value都是true
obj[arr[temp]] = true;
}
return obj;
};
// 傳入obj對象 返回arr數(shù)組
var toArr = function( obj ){
var arr = [];
for(var temp in obj){
//把所有的key push到數(shù)組當中
arr.push(temp);
}
return arr;
};
//把兩個方法聯(lián)合起來
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數(shù)組操作技巧總結》、《JavaScript字符與字符串操作技巧總結》、《JavaScript遍歷算法與技巧總結》、《JavaScript排序算法總結》、《JavaScript查找算法技巧總結》、《JavaScript數(shù)學運算用法總結》、《JavaScript數(shù)據(jù)結構與算法技巧總結》及《JavaScript錯誤與調試技巧總結》
希望本文所述對大家JavaScript程序設計有所幫助。
相關文章
優(yōu)化innerHTML操作(提高代碼執(zhí)行效率)
多數(shù)現(xiàn)代瀏覽器都實現(xiàn)了innerHTML操作,它的方便性讓我們愛不釋手,但如果使用不當,很容易出現(xiàn)效率問題,本文通過一個例子來說明如何優(yōu)化innerHTML操作。2011-08-08
bootstrap modal+gridview實現(xiàn)彈出框效果
這篇文章主要介紹了bootstrap modal+gridview實現(xiàn)彈出框效果,gridview點擊更新彈出填寫信息表單,具有一定的參考價值,感興趣的小伙伴們可以參考一下2017-08-08
微信小程序 JS動態(tài)修改樣式的實現(xiàn)方法
這篇文章主要給大家介紹了關于微信小程序JS動態(tài)修改樣式的相關資料,文中通過示例代碼介紹的非常詳細,對大家的學習或者工作具有一定的參考學習價值,需要的朋友們下面隨著小編來一起學習學習吧2018-12-12

