美文网首页
JS数组遍历

JS数组遍历

作者: Jason_SheYing | 来源:发表于2019-03-27 13:09 被阅读0次

    本文针对JS中数组遍历做一个总结

    普通 for 循环
        for(let i = 0, len = arr.length; i < len; i++) {
            console.log(arr[i]);
        }
    
    forEach 循环(数组自带的方法)
        arr.forEach((value, index) => {
            console.log('序号:' + index + ', 值:' + value)
        });
    
    注意: forEach循环中不能 break, return和循环中改变数组的值
    map 循环
        let newArr = arr.map((value, index) => {
          return value++;
        });
    
    注意: map循环返回一个新数组,可以return, break
    filter 循环
        let newArr = arr.filter((value, index) => {
          return value > 20;
        });
    
    注意: filter循环返回一个新数组,其中值为返回判断条件为true的值(可以理解为过滤)
    reduce
        let sum = arr.reduce((prev, cur, index, arr) => {
          console.log(prev, cur);
          return prev + cur;
        }, 0);
    
    注意: 一般 reduce用来计算数组的每一项之和,第一个参数是函数,第二个参数是初始值,若不指定初始值的话将从数组的第二项开始给每一项执行函数,所以一般我们都会指定初始值.第一个函数参数分别为 上一项, 当前项, 当前数组下标, 当前数组
    for-of 循环
        for (const item of arr) {
          console.log(item)
        }
    
    • 可以正确响应break、continue和return语句
    • 不仅支持数组,还支持大多数类数组对象
    • 支持字符串遍历
    for-in 循环
        for (const key in obj) {
          console.log(key + ':' + obj[key])
        }
    
    注意: for-in循环适用于遍历对象,若是遍历数组的话访问的是数组的下标.另外,在跨浏览器的设计中,我们不能依赖于for-in来获取对象的成员名称

    相关文章

      网友评论

          本文标题:JS数组遍历

          本文链接:https://www.haomeiwen.com/subject/wnhzvqtx.html