1.数组去重
//声明原数组
var arr=[2,2,2,4,4,4,5,5,5,6,6,6,]
//声明新数组准备放置不重复的数组
var arr1 = [];
//for循环遍历
for(var i = 0;i<arr.length;i++){
//用indexOf检索是否有该元素,没有返回-1
if(arr1.indexOf(arr[i]) == -1){
//则添加到新数组
arr1.push(arr[i])
}
}
console.log(arr1);
//有个更简单的,这个方法即使是在里面有字符串的情况下也适用
ler arr1 = arr.filter((e,i)=>{
return arr.indexOf(e) == i
})
2.字符串去重
var arr = "aaaabbbbddddfffffwwww";
var arr1 = "";
for(var i = 0;i<arr.length;i++){
if(arr1.indexOf(arr[i]) == -1){
arr1 += arr[i]
}
}
console.log(arr1);
看得出来不管是字符串还是数组,去重的方法都大同小异,这里主要想告诉大家的是,字符串可以用数组里的indexOf方法且有效
3.冒泡排序
//声明原数组
var arr=[1,11,22,33,2,5,12];
var t; //声明空值
//两层for循环遍历
for(var i = 0;i<arr.length;i++){
for(var j = 0;j<arr.length-1;j++){ //因为这个方法是拿相邻的前一个数跟后一个数比较,所以length-1
if(arr[j+1]<arr[j]){ //后面的数比较前面的数
t = arr[j+1]; //空值储存
arr[j+1] = arr[j] //后面一个数交换前面那个数
arr[j] = t; //前面的数成为后面的数,交换完成
}
}
}
console.log(arr);