实用且比较简单的数组排序与数组去重的方法,也较好理解;html
一、数组冒泡排序:数组
var arr=["a",3,5,2,1,4,2,3,3,3,5,5,5,4]; function sort(arr){ //让数组中的元素俩俩进行比较,实现替换; for (var i = 0; i< arr.length; i++) { for (var j = 0; j < arr.length; j++) { if (arr[j] > arr[j + 1]) { var temp = arr[j]; arr[j] = arr[j + 1]; arr[j + 1] = temp; } } } return arr; } console.log(sort(arr));
二、数组去重:最简单的去重方法;优化
先建立一个新的数组来存储数据,利用es5中的indexOf方法在新的数组中寻找重复项,若是没有就添加到新的数组中,es5
var arr=["a",3,5,2,1,4,2,3,3,3,"a",5,5,5,4]; var arr1=[]; for(var i=0;i<arr.length;i++){ if(arr1.indexOf(arr[i])==-1) arr1.push(arr[i]); } console.log(arr1);
这俩个方法比较简单,第一个还能够在作优化,代码以下:htm
var arr=["a",3,5,2,1,4,2,3,3,3,5,5,5,4]; function sort(arr){ //让数组中的元素俩俩进行比较,实现替换; for (var i = 0; i< arr.length-1; i++) { for (var j = 0; j < arr.length-1-i; j++) { if (arr[j] > arr[j + 1]) { var temp = arr[j]; arr[j] = arr[j + 1]; arr[j + 1] = temp; } } } return arr; } console.log(sort(arr));
这样优化使循环次数减小一半blog