JavaScript数组去重有很多方法,今天要说的这个方法相比较而言性能较好,用两种写法展现。
方式一:
function my_unique (txt) {
var res = [];
var json = [];
for(var i = 0; i < txt.length; i++){
if(!json[txt[i]]){
res.push($.trim(txt[i]));
json[txt[i]] = true;
}
}
return res;
}
稍作解释的是$.trim(),这是为了去除字符串txt[i]的空格。
方式二:
Array.prototype.my_unique = function(){
var res = [];
var json = {};
for(var i = 0; i < this.length; i++){
if(!json[this[i]]){
res.push(this[i]);
json[this[i]] = true;
}
}
return res;
}
这两种方法算法思想一致。