一个数组之中的值如果有重复的,怎么把这个数组变的没有重复值,这就需要用到我们已经学过的知识,运用算法来实现。
数组去重在原型链上编程,也就是在Array.prototype上面写代码。
Array.prototype.unique = function (){
var temp = {},len = this.length,arr = [];
for(var i = 0; i < len; i ++){
if(!temp[this[i]]){
temp[this[i]] = "a";
arr.push(this[i]);
}
}
return arr;
}
var arr = [1,2,3,4,5,1,2,3,4];
console.log(arr.unique());
//[1,2,3,4,5]
字符串去重,字符串去重和数组去重数据结构是一样的。
String.prototype.unique = function(){
var temp = {},len = this.length,s = "";
for(var i = 0; i < len; i ++){
if(!temp[this[i]]){
temp[this[i]] = "1";
s += this[i];
}
}
return s;
}
var str = "abcabcqweqwe";
console.log(str.unique());
//"abcqwe"
JavaScript语言我个人感觉是最有意思的了,我也是一个初学者,遇到问题,喜欢在博客上分享,
也希望能帮到大家。一个初学者,有什么不足或者纰漏的话,希望在下面评论出来,相互学习,共同进步。
--主页传送门--