数组的案例

  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>
原文地址:https://www.cnblogs.com/my12-28/p/11738472.html