方法一 123456789101112131415161718 Array.prototype.unique1 = (){ var res = [this[0]]; for(var i = 1; i < this.length; i++){ var repeat = false; for(var j = 0; j < res.length; j++){ if(this[i] == res[j]){ repeat = true; break; } } if(!repeat){ res.push(this[i]); } } return res;}var arr = [1, 'a', 'a', 'b', 'd', 'e', 'e', 1, 0]alert(arr.unique1()); 方法二 12345678910 var arr = ['aaa','bbb','aaa','ccc','111','bbb','ddd','ccc','222','ccc','111','fff'];//定义一个新的数组var s = [];//遍历数组for(var i = 0;i<arr.length;i+ +){ if(s.indexOf(arr[i]) == -1){ //判断在s数组中是否存在,不存在则push到s数组中 s.push(arr[i]); }}console.log(s); //["aaa", "bbb", "ccc", "111", "ddd", "222", "fff"] 关于indexOf()方法: indexOf() 方法可返回某个指定的字符串值在字符串中首次出现的位置。 如果在数组中没找到字符串则返回 -1。 赞微海报分享
近期评论