JavaScript 遍历数组

所谓遍历数组就是把数组中的每个元素从头到尾都访问一边;

我们可以通过 for 循环,进行遍历数组 

        这里需要注意的是 因为我们的数组是从索引 0 开始的,所以循环里面的 i 必须是从 0 开始的,i < 数组的长度 数组名.length

        arr.length  是动态监测数组的长度是元素的个数,不要跟索引号混淆;长度是从1开始的; 

    var arr = ['星期一','星期二','星期三','星期四','星期五','星期六','星期日'];
    for(var i = 0; i < arr.length; i++){
        console.log(arr[i]);
    }
    // 最后得到的是   星期一 星期二 星期三 星期四 星期五 星期六 星期日
// 求数组 [2,6,1,7,4]里面所有元素的和以及平均值
    var arr1 = [2,6,1,7,4];
    var sum = 0; //声明一个求和变量
    for(var i = 0; i < arr1.length; i++){
        sum = sum + arr1[i];
    }
    alert('数组arr1中所有元素的和是'+ sum);
    alert('数组arr1中所有元素的平均值是'+ sum / arr1.length);
// 求数组[2,6,1,77,52,25,7]中的最大值
// 解题思路:1 声明一个保存最大元素的变量 max; 默认最大值可以取这个数组中第一个元素;
//          2.遍历这个数组,把里面的每个元素和max相比较;
//          3.如果这个数组元素大于max 就把这个数组元素存到max里面,否则进行下一轮比较;
//          4.最后输出这个这个最大值 max
    var arr2 = [2,6,1,77,52,25,7];
    var max = arr2[0];
    for(var i = 0; i < arr2.length; i++){
        if(arr2[i] > max){
            max = arr2[i];
        }
    }
    console.log('该数组中的最大值是'+ max);
// 将数组['red','green','blue','pink'],转换为字符串,并且用|或者其他符号进行分割

    var arr = ['red','green','blue','pink'];
    var str = '';
    var re = '$'; //用$对数组进行分割
    for(var r = 0; r < arr.length; r++){
        str = str + arr[r] + re;
    }
    console.log(str);
// 要求:将数组[2,0,6,1,77,0,52,0,25,7]中大于等于10的元素选出来,放入新数组

var arr1 = [2,0,6,1,77,0,52,0,25,7];
var arr2 = [];
var j = 0;//声明一个新的变量来记录新数组的索引
for(var i = 0; i < arr1.length; i++){
    if(arr1[i] > 10){
        arr2[j] = arr1[i];
        j++ // 让索引依次递增
    }
}
console.log(arr2); //[77, 52, 25]


// 第二种方法  利用length 可以自动检测数组的长度

var arr1 = [2,0,6,1,77,0,52,0,25,7];
var arr2 = [];
for(var i = 0; i < arr1.length; i++){
    if(arr1[i] > 10){
        arr2[arr2.length] = arr1[i];
    }
}
console.log(arr2); //[77, 52, 25]
// 将数组[2,0,6,1,77,0,52,0,25,7]中的0去掉,形成一个不包含0的数组

var arr1 = [2,0,6,1,77,0,52,0,25,7];
var arr2 = [];
for(var i = 0; i < arr1.length; i++){
    if(arr1[i] != 0){
        arr2[arr2.length] = arr1[i];
    }
}
console.log(arr2); //[2, 6, 1, 77, 52, 25, 7]
发布了75 篇原创文章 · 获赞 7 · 访问量 6874

猜你喜欢

转载自blog.csdn.net/HelloWord176/article/details/104866330