ES6 Array

作者: 淡淡紫色 | 来源:发表于2018-10-31 15:35 被阅读0次

    Array.find()与Array.findIndex()

    find()函数用来在数组中查找目标元素,找到则返回该元素,找不到就返回undefined;
    findIndex()函数用来在数组中查找目标元素,找到则返回该元素在数组中的位置,找不到就返回-1;

    两者都是用来查找元素的回调函数;

    [1,2,3,4].find({value,index,arr} => {})
    查找函数有三个参数,
    //  value: 每一次迭代查找的数组元素;
    //  index: 每一次迭代查找的数组元素索引;
    //  arr: 被查找的数组
    

    例:
    1.查找元素,返回找到的值,找不到返回undefined;

    const arr1 = [ 1, 2, 3, 4, 5, 6, 7, 8, 9, 10, 11];
    let ret1 = arr1.find((value, index, arr) => {
        return value > 4
    })
    let ret2 = arr1.find((value, index, arr) => {
        return value > 14
    })
    console.log('ret1', ret1)
    console.log('ret2', ret2)
    

    结果:

    'ret1',5
    'ret2',undefined
    

    2.查找元素,返回找到的index,找不到返回-1;

    let ret3 = arr1.findIndex((value, index, arr) => {
        return value > 4
    })
    let ret4 = arr1.findIndex((value, index, arr) => {
        return value > 14
    })
    console.log('ret3', ret3)
    console.log('ret4', ret4)
    

    结果

    'ret3',4 
    'ret4',-1
    
    1. 查找NaN;
    const arr2 = [1, 2, NaN, 4, 5, 6, 7, 8, 9, 10, 11, 12];
    let ret5 = arr2.find((value, index, arr) => {
        return Object.is(NaN, value)
    })
    let ret6 = arr2.findIndex((value, index, arr) => {
        return Object.is(NaN, value)
    })
    console.log('ret5', ret5)
    console.log('ret6', ret6)
    

    结果:

    'ret5', NaN
    'ret6',2
    

    相关文章

      网友评论

          本文标题:ES6 Array

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