一、数组排序
1.要求
通过回调方法设置正序和倒序
2.思路
双重循环
临时变量存储
交换大小值
条件判断
输入值:arr1 = [48, 99, 77, 33, 22, 78, 81, 2, 3, 5, 10];
输出值:
从小到大排序:2,3,5,10,22,33,48,77,78,81,99
从大到小排序:99,81,78,77,48,33,22,10,5,3,2
3.源代码
<!DOCTYPE html><html lang="en"><head> <meta charset="UTF-8"> <title>sort</title></head><body> <!--sort() 方法是最强大的数组方法之一,通过回调方法设置正序和倒序--> <script> function sort(arrs, flag = true) { for (var i = 0; i < arrs.length - 1; i++) { for (var j = 0; j < arrs.length - i - 1; j ++){ if (flag) { if (arrs[j] > arrs[j + 1]) { var tmp = arrs[j]; arrs[j] = arrs[j + 1]; arrs[j + 1] = tmp; } } else { if (arrs[j] < arrs[j + 1]) { var tmp = arrs[j]; arrs[j] = arrs[j + 1]; arrs[j + 1] = tmp; } } } } return arrs; } var arr1 = [48, 99, 77, 33, 22, 78, 81, 2, 3, 5, 10]; console.log('从小到大排序:' + sort(arr1)); console.log('从大到小排序:' + sort(arr1, false)); </script></body></html>
二、比大小
1.思路
设置max,min两个函数,对输入的参数数组比较,获取到最大最小值,并返回。
输入值: testArray = [1, 2, 3, 8, 11, 5, 9, 4, 6, 7];
输出值:见console.log
2.源代码
<!DOCTYPE html><html lang="en"><head> <meta charset="UTF-8"> <title>比大小</title></head><body> <script> function max(arr) { var max = arr[0]; for (var i = 0; i < arr.length; i++) { if (arr[i] > max) { max = arr[i]; } } return max; } function min(arr) { var max = arr[0]; for (var i = 0; i < arr.length; i++) { if (arr[i] < max) { max = arr[i]; } } return max; } var testArray = [1, 2, 3, 8, 11, 5, 9, 4, 6, 7]; console.log('数组中最大的值为:'+ max(testArray)); console.log('数组中最小的值为:'+ min(testArray)); </script></body></html>