1 <!DOCTYPE html> 2 <html> 3 <head lang="en"> 4 <meta charset="UTF-8"> 5 <title></title> 6 </head> 7 <body> 8 <script> 9 10 11 //一、求一组数中的所有数的和和平均值 12 // var arr = [10,20,30]; 13 // //计数器思想 14 // var sum = 0; 15 // for(var i=0;i<arr.length;i++){ 16 // sum += arr[i]; 17 // } 18 // console.log(sum); 19 // var avg = sum/arr.length; 20 // console.log(avg); 21 22 //二、求一组数中的最大值和最小值,以及所在位置 23 //预热案例:求最大值 24 // var arr = [-10,20,-30,0]; 25 // //必须使用数组中的值。(最好是第一个或者最后一个,可以少比较一次) 26 //// var max = 0; 27 // var max = arr[0]; 28 // for(var i=1;i<arr.length;i++){ 29 // //遍历数组,判断数组中的每一项,如果比max大,赋值给max,否则不用管 30 // if(arr[i]>max){ 31 // max = arr[i]; 32 // } 33 // } 34 // alert(max); 35 36 // var arr = [10,-20,30,40]; 37 // //定义一个最大值和一个最小值,把他们的索引值赋值给固定的两个变量 38 // var maxValue = arr[0]; 39 // var minValue = arr[0]; 40 // var maxIndex = 0; 41 // var minIndex = 0; 42 // 43 // for(var i=1;i<arr.length;i++){ 44 // //如果数组中的元素大于我们定义的最大值 45 // if(arr[i]>maxValue) { 46 // //把这个元素赋值给最大值,把他对应的索引值,赋值给maxIndex 47 // maxValue = arr[i]; 48 // maxIndex = i; 49 // } 50 // //如果数组中的元素小于我们定义的最小值 51 // if(arr[i]<minValue){ 52 // //把这个元素赋值给最小值,把他对应的索引值,minIndex 53 // minValue = arr[i]; 54 // minIndex = i; 55 // } 56 // } 57 // console.log(maxValue); 58 // console.log(maxIndex); 59 // console.log(minValue); 60 // console.log(minIndex); 61 62 //三、将字符串数组用|或其他符号分割 63 // var arr = ["吕超","赵云","典韦","关羽","马超","张飞"]; 64 // var str = arr[0]; 65 // var separator = "|"; 66 // //为了避免第一个名字前有|,把第一个名字从数组中取出,赋值给str,然后在链接其他名字。 67 // for(var i=1;i<arr.length;i++){ 68 // str += separator+ arr[i]; 69 // } 70 // console.log(str); 71 72 73 //四、将数组中值为0的去掉不为0的存入一个新数组 74 // var arr = [0,"刘备",0,"关羽",0,"张飞",0]; 75 // var newArr = []; 76 // for(var i=0;i<arr.length;i++){ 77 // //判断,如果不是0,放入新数组 78 // if(arr[i] !== 0){ 79 // newArr[newArr.length] = arr[i]; 80 // } 81 // } 82 // console.log(newArr); 83 84 85 //五、翻转数组 86 //思路:实现方法:1.定义一个新数组,把老数组中的元素从后往前添加到新数组中。 87 //思路:实现方法:1.操作原数组,让原数组第一位和最后一个位调换位置,以此类推。 88 var arr = ["刘备","关羽","张飞","诸葛亮","马超","黄忠","姜维"]; 89 console.log(arr); 90 //思路:实现方法:1.定义一个新数组,把老数组中的元素从后往前添加到新数组中。 91 // var newArr = []; 92 //复杂版 93 // for(var i=0;i<arr.length;i++){ 94 // //用新数组的长度作为索引值。 给定数组的最大索引值,然后-去i,因为i自增所以,获取的将是最大索引值到0; 95 // newArr[newArr.length] = arr[arr.length-1-i]; 96 // } 97 // console.log(newArr); 98 //简单版 99 // for(var i=arr.length-1;i>=0;i--){ 100 // //用新数组的长度作为索引值。 给定数组的最大索引值,然后-去i,因为i自增所以,获取的将是最大索引值到0; 101 // newArr[newArr.length] = arr[i]; 102 // } 103 // console.log(newArr); 104 105 //思路:实现方法:1.操作原数组,让原数组第一位和最后一个位调换位置,以此类推。 106 for(var i=0;i<arr.length/2;i++){ 107 //让前后数组中的元素交换位置。 108 var temp = arr[i]; 109 //前面项和对应的后面项交换位置。(arr.length-1-i = 倒数第i+1项) 110 arr[i] = arr[arr.length-1-i]; 111 arr[arr.length-1-i] = temp; 112 } 113 114 console.log(arr); 115 116 117 </script> 118 </body> 119 </html>