javascript数组学习1
<!DOCTYPE html> <html> <head > <meta charset="UTF-8"> <title></title> </head> <body> <script> //一、求一组数中的所有数的和和平均值 // var arr = [10,20,30]; // //计数器思想 // var sum = 0; // for(var i=0;i<arr.length;i++){ // sum += arr[i]; // } // console.log(sum); // var avg = sum/arr.length; // console.log(avg); //二、求一组数中的最大值和最小值,以及所在位置 //预热案例:求最大值 // var arr = [-10,20,-30,0]; // //必须使用数组中的值。(最好是第一个或者最后一个,可以少比较一次) //// var max = 0; // var max = arr[0]; // for(var i=1;i<arr.length;i++){ // //遍历数组,判断数组中的每一项,如果比max大,赋值给max,否则不用管 // if(arr[i]>max){ // max = arr[i]; // } // } // alert(max); // var arr = [10,-20,30,40]; // //定义一个最大值和一个最小值,把他们的索引值赋值给固定的两个变量 // var maxValue = arr[0]; // var minValue = arr[0]; // var maxIndex = 0; // var minIndex = 0; // // for(var i=1;i<arr.length;i++){ // //如果数组中的元素大于我们定义的最大值 // if(arr[i]>maxValue) { // //把这个元素赋值给最大值,把他对应的索引值,赋值给maxIndex // maxValue = arr[i]; // maxIndex = i; // } // //如果数组中的元素小于我们定义的最小值 // if(arr[i]<minValue){ // //把这个元素赋值给最小值,把他对应的索引值,minIndex // minValue = arr[i]; // minIndex = i; // } // } // console.log(maxValue); // console.log(maxIndex); // console.log(minValue); // console.log(minIndex); //三、将字符串数组用|或其他符号分割 // var arr = ["吕超","赵云","典韦","关羽","马超","张飞"]; // var str = arr[0]; // var separator = "|"; // //为了避免第一个名字前有|,把第一个名字从数组中取出,赋值给str,然后在链接其他名字。 // for(var i=1;i<arr.length;i++){ // str += separator+ arr[i]; // } // console.log(str); //四、将数组中值为0的去掉,不为0的存入一个新数组 // var arr = [0,"刘备",0,"关羽",0,"张飞",0]; // var newArr = []; // for(var i=0;i<arr.length;i++){ // //判断,如果不是0,放入新数组 // if(arr[i] !== 0){ // newArr[newArr.length] = arr[i]; // } // } // console.log(newArr); //五、翻转数组 //思路:实现方法:1.定义一个新数组,把老数组中的元素从后往前添加到新数组中。 //思路:实现方法:1.操作原数组,让原数组第一位和最后一个位调换位置,以此类推。 var arr = ["刘备","关羽","张飞","诸葛亮","马超","黄忠","姜维"]; console.log(arr); //思路:实现方法:1.定义一个新数组,把老数组中的元素从后往前添加到新数组中。 // var newArr = []; //复杂版 // for(var i=0;i<arr.length;i++){ // //用新数组的长度作为索引值。 给定数组的最大索引值,然后-去i,因为i自增所以,获取的将是最大索引值到0; // newArr[newArr.length] = arr[arr.length-1-i]; // } // console.log(newArr); //简单版 // for(var i=arr.length-1;i>=0;i--){ // //用新数组的长度作为索引值。 给定数组的最大索引值,然后-去i,因为i自增所以,获取的将是最大索引值到0; // newArr[newArr.length] = arr[i]; // } // console.log(newArr); //思路:实现方法:1.操作原数组,让原数组第一位和最后一个位调换位置,以此类推。 for(var i=0;i<arr.length/2;i++){ //让前后数组中的元素交换位置。 var temp = arr[i]; //前面项和对应的后面项交换位置。(arr.length-1-i = 倒数第i+1项) arr[i] = arr[arr.length-1-i]; arr[arr.length-1-i] = temp; } console.log(arr); </script> </body> </html>
- 上一篇 »javascript中map会改变原始的数组吗?
- 下一篇 »javascript学习笔记-1