思路来源于某个同学的博客
function norepeat(arr){
return arr.filter(function(val,index,array) {
return array.indexOf(val)===index;
});
}
var newarr=norepeat(["a","abc","4","xy","xyz","a","abcd","abc"]);
alert(newarr);
利用filter和indexOf,如果这个数不重复,那个它的首个出现的index一定是传入的index
方法二:利用ES6的Set数据结构。
ES6 提供了新的数据结构 Set。它类似于数组,但是成员的值都是唯一的,没有重复的值。
function norepeat(arr){
return [...new Set(arr)];
} norepeat(["a","abc","4","xy","xyz","a","abcd","abc"])
// ["a", "abc", "4", "xy", "xyz", "abcd"]