zoukankan      html  css  js  c++  java
  • 数组的遍历方法

    以...为例

    let arr = [1,2,3,4]
    let Arr = [
        {id: 0, name: '小明' },
        {id: 1, name: '小白' },
        {id: 2, name: '小红' },
        {id: 3, name: '小新' }
    ]

     

    for

    for (let i = 0; i < 6; i++) {
        
    }

     

    for in

    遍历数组索引

    for (i in arr) {
        console.log(i);
    }
    // 0、1、2、3

     

    for of

    遍历数组元素值

    for (v in arr) {
        console.log(i);
    }
    // 1、2、3、4

     

    forEach

    遍历数组中的每一项,没有返回值,对原数组没有影响

    arr.forEach((value,index,arr) => {
        
    });
    value     必需,当前元素
    index     可选,当前元素的索引值
    arr     可选,当前元素所属的数组对象

     

    indexOf

    返回某个指定的值在数组中首次出现的位置

    arr.indexOf(value,fromindex)
    value     必需,规定需检索的字符串值。
    fromindex     可选的整数参数,规定在字符串中开始检索的位置

     

    lastIndexOf

    返回某个指定的值在数组中最后出现的位置,用法同 indexOf

     

    find

    返回一个符合条件的数组第一个元素值
    常用语法: arr.find(value,index,arr) => {})
    
    let a = Arr.findIndex(v => v.id === 2)    
    console.log(a); //{ id: 2, name: '小红', age: 3 }

     

    findIndex

    返回一个符合条件的数组第一个元素位置

    常用语法: arr.findIndex(value,index,arr) => {})

    let a = Arr.findIndex(v => v.id === 2) console.log(a); //2

     

    includes

    判断数组是否包含指定的元素值

    arr.includes(value, fromIndex)
    value     必须,需要查找的元素值。
    fromIndex     可选,从该索引处开始查找 

     

    every

    检测数组所有元素是否都符合指定条件,如果数组中检测到有一个元素不满足,则整个表达式返回 false

    常用语法: arr.every(value,index,arr) => {})
    
    let a = Arr.findIndex(v => v.id > 2)    
    console.log(a); //false

    some

    检测数组所有元素是否都符合指定条件,如果有一个元素满足条件,则表达式返回true

    常用语法: arr.some((value,index,arr) => {})
    
    let a = Arr.findIndex(v => v.id > 2)    
    console.log(a); //true

     

    map

    返回一个新数组,数组中的元素为原始数组元素调用函数处理后的值,不影响原数组

    常用语法: arr.map(value,index,arr) => {})
    
    let a = Arr.map( (v,i) => {
    return v.id * i
    })
    console.log(a); //[ 0, 1, 4, 9 ]

     

    filter

    返回一个新的数组,新数组中的元素是通过检查指定数组中符合条件的所有元素,不影响原数组

    常用语法: arr.filter(value,index,arr) => {})
    
    let a = Arr.filter((v,i) => {
        return v.id > 1 
    })     
    console.log(a); //[ { id: 2, name: '小红', age: 3 } ]

     

    reduce

    接收一个函数作为累加器,数组中的每个值(从左到右)开始缩减,最终计算为一个值

    常用语法: arr.reduce((total, value, index, arr) => {})

         total: 必需,初始值, 或者计算结束后的返回值

    let a = arr.reduce((total,v) => {
    return total + v
    })
    console.log(a); //10

     

    reduceRight

    和 reduce 功能是一样的,不同的是 reduceRight() 从数组的末尾向前将数组中的数组项做累加

     

    keys、values、entries

    返回一个数组的迭代对象,可以用 for of 进行遍历

    keys遍历原数组键,values遍历原数组值,entries遍历原数组键值对

     

  • 相关阅读:
    老齐python-基础7(文件操作、迭代)
    老齐python-基础6(循环 if while for)
    老齐python-基础5(运算符、语句)
    老齐python-基础4(元祖、字典、集合)
    老齐python-基础3(列表)
    老齐python-基础2(字符串)
    Jupyter notebook 的安装、入门
    pycharm 激活码
    VMware无法连接 MKS:套接字连接尝试次数太多正在放弃
    Numpy基本用法简介
  • 原文地址:https://www.cnblogs.com/huangyuanning/p/11974265.html
Copyright © 2011-2022 走看看