Array.prototype.unique1 = function() { var arr = []; for(var i=0;i<this.length;i++) { //判斷有沒有數(shù)組在里面,沒有就放進去 if(arr.indexOf(this[i]) == -1 ){ arr.push(this[i]) } } return arr; } Array.prototype.unique2 = function() { var arr = [], json = {}; for(var i = 0;i<this.length;i++) { //使用哈希表,利用關鍵字的判斷去重 //如果哈希表中沒有當前項 if(!json[this[i]]) { json[this[i]] = true; arr.push(this[i]); } } return arr; } Array.prototype.unique3 = function() { this.sort(req); //先進行數(shù)組的排序 var arr = []; for(var i=0;i<this.length;i++) { //如果當前項與上一項不相同時,則存入結(jié)果數(shù)組 if(this[i] != this[i-1]) { arr.push(this[i]); } } return arr; } 推薦用第二第三種方法 |
|
來自: 我的前端圖書館 > 《數(shù)組去重》