方法一:
利用for 和 if-else
<script type="text/javascript"> var arr = [32,4,67,82,21,11]; ///轮数 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; } } } console.log(arr); //冒泡排序 //给出一个数组 var newArr = [1,3,6,4,8,5]; //for遍历 //将最小的数一步一步往前移 for(var i = 0; i<newArr.length-1;i++){ //相邻两个之间换位置 for(var j = 0;j<newArr.length-1;j++){ //这里和上面一样的地方不同在于没有 - i . //判断前一个大于后一个数时进行交换 if(newArr[j] > newArr[j+1]){ //借助第三方变量交换两个变量的值 var temp = newArr[j]; newArr[j] = newArr[j+1]; newArr[j+1] = temp; } } } console.log(newArr); </script>
方法二:
利用 sort()方法
<script type="text/javascript"> //1.给出一个数组 var arr = [3,5,1,7,99,8]; //2.创建一个排序函数 //若 a 小于 b,在排序后的数组中 a 应该出现在 b 之前,则返回一个小于 0 的值。 //若 a 等于 b,则返回 0。 //若 a 大于 b,则返回一个大于 0 的值。 function sortNumber(a, b){ return a - b } console.log(arr.sort(sortNumber)); </script>