1 <script>
2
3
4 //一、求一组数中的所有数的和和平均值
5 // var arr1 = [10,20,30];
6 // //计数器思想
7 // var sum = 0;
8 // for(var i=0;i<arr1.length;i++){
9 // sum += arr1[i];
10 // }
11 // console.log(sum);
12 // var avg = sum/arr1.length;
13 // console.log(avg);
14
15
16 //二、求一组数中的最大值和最小值,以及所在位置
17 //预热案例:求最大值
18 // var arr2 = [-10,20,-30,0];
19 // //必须使用数组中的值。(最好是第一个或者最后一个,可以少比较一次)
20 //// var max = 0;
21 // var max = arr2[0];
22 // for(var i=1;i<arr2.length;i++){
23 // //遍历数组,判断数组中的每一项,如果比max大,赋值给max,否则不用管
24 // if(arr[i]>max){
25 // max = arr2[i];
26 // }
27 // }
28 // alert(max);
29
30
31
32 // var arr3 = [10,-20,30,40];
33 // //定义一个最大值和一个最小值,把他们的索引值赋值给固定的两个变量
34 // var maxValue = arr3[0];
35 // var minValue = arr3[0];
36 // var maxIndex = 0;
37 // var minIndex = 0;
38 //
39 // for(var i=1;i<arr.length;i++){
40 // //如果数组中的元素大于我们定义的最大值
41 // if(arr[i]>maxValue) {
42 // //把这个元素赋值给最大值,把他对应的索引值,赋值给maxIndex
43 // maxValue = arr[i];
44 // maxIndex = i;
45 // }
46 // //如果数组中的元素小于我们定义的最小值
47 // if(arr[i]<minValue){
48 // //把这个元素赋值给最小值,把他对应的索引值,minIndex
49 // minValue = arr[i];
50 // minIndex = i;
51 // }
52 // }
53 // console.log(maxValue);
54 // console.log(maxIndex);
55 // console.log(minValue);
56 // console.log(minIndex);
57
77 //三、将字符串数组用|或其他符号分割
78 var arr = ["吕超","赵云","典韦","关羽","马超","张飞"];
79 var str = arr[0];
80 var separator = "|";
81 //为了避免第一个名字前有|,把第一个名字从数组中取出,赋值给str,然后在链接其他名字。
82 for(var i=1;i<arr.length;i++){
83 str += separator+ arr[i];
84 }
85 console.log(str);
102 //四、将数组中值为0的去掉,不为0的存入一个新数组
103 var arr = [0,"刘备",0,"关羽",0,"张飞",0];
104 var newArr = [];
105 for(var i=0;i<arr.length;i++){
106 //判断,如果不是0,放入新数组
107 if(arr[i] !== 0){
108 newArr[newArr.length] = arr[i];
109 }
110 }
111 console.log(newArr);
112
120 //五、翻转数组
121 //思路:实现方法:1.定义一个新数组,把老数组中的元素从后往前添加到新数组中。
122 //思路:实现方法:2.操作原数组,让原数组第一位和最后一个位调换位置,以此类推。
123 var arr = ["刘备","关羽","张飞","诸葛亮","马超","黄忠","姜维"];
124 console.log(arr);
125 //思路:实现方法:1.定义一个新数组,把老数组中的元素从后往前添加到新数组中。
126 var newArr = [];
127 //复杂版
128 for(var i=0;i<arr.length;i++){
129 //用新数组的长度作为索引值。 给定数组的最大索引值,然后-去i,因为i自增所以,获取的将是最大索引值到0;
130 newArr[newArr.length] = arr[arr.length-1-i];
131 }
132 console.log(newArr);
133 //简单版
134 for(var i=arr.length-1;i>=0;i--){
135 //用新数组的长度作为索引值。 给定数组的最大索引值,然后-去i,因为i自增所以,获取的将是最大索引值到0;
136 newArr[newArr.length] = arr[i];
137 }
138 console.log(newArr);
139
140 //思路:实现方法:2.操作原数组,让原数组第一位和最后一个位调换位置,以此类推。
141 for(var i=0;i<arr.length/2;i++){
//这里数组长度/2是为了少交换一遍
142 //让前后数组中的元素交换位置。
143 var temp = arr[i];
144 //前面项和对应的后面项交换位置。(arr.length-1-i = 倒数第i+1项)
145 arr[i] = arr[arr.length-1-i];
146 arr[arr.length-1-i] = temp;
147 }
148
149 console.log(arr);
150
156
</script>