• js判断数组中某个值是否存在


    1.indexOf()  -> ES5:返回索引,大于0则存在,-1不存在
    
    const array = ['apple', 'banance', 'orange']
    
    array.indexOf('apple')    // 0 存在
    
    array.indexOf('strawBerry')     // -1不存在
    
     
    
    2.find()   -> ES6:用于找出第一个符合条件的数组成员,他的参数是一个回调函数,所有数组成员一次执行这个回调函数,知道找出第一个返回值为true的成员,然后返回该成员,如果没有符合条件的成员,就返回undefined
    
    const array = ['apple', 'banance', 'orange']
    
    array.find(obj => obj == 'banance')    //banance 存在
    
    array.find(obj => obj == 'strawBally')    //undefined 不存在
    
    或者这种写法:
    
    [1,5,15,20,25].find((value,index,arr) => { return value > 20; })
    
    上面代码中,find方法接受是三个参数,依次为当前成员,当前位置和原数组。
    
     
    
    const arrayList = [
    
      {name: '张三'}, {name: '李四'}
    
    ]
    
    arrayList.find(obj => obj.name == '李四')        //{name: '李四'} 存在
    
    arrayList.find(obj => obj.name == '王五')        //undefined 不存在
    
     
    
    3.findIndex()  -> ES6:返回第一个符合条件的数组成员的位置,如果所有的成员都不符合条件,就返回-1
    
    const array = ['apple', 'banance', 'orange']
    
    array.findIndex(obj => obj == 'banance')    //大于0存在
    
    array.findIndex(obj => obj == 'strawBally')    //-1 不存在
    
     
    
    3.includes():返回值为布尔类型(note:ie不太兼容,慎用)
    
    const array = ['apple', 'banance', 'orange']
    
    array.includes('banance')      //true存在
    
    array.includes('strawBally')      //false存在
    
     
    
    4.filter():返回一个数组
    
    const array = ['apple', 'banance', 'orange']
    
    array.filter(obj => obj == 'orange')     //['orange'] 存在
    
    array.filter(obj => obj == 'strawBally')     //[] 不存在
    
     
    
    const array = [{ name: 'banance' }, { name: 'apple' }]
    
    console.log(array.filter(obj => obj.name === 'apple'))    //[{name: 'apple'}] 存在
    
    console.log(array.filter(obj => obj.name === 'strawBally'))    //[] 不存在
  • 相关阅读:
    [软件工程基础]第 1 次个人作业
    [软件工程基础]个人项目 数独
    [2017BUAA软件工程]第0次个人作业
    [2017BUAA软工]第零次作业
    NoSQL-流式数据处理与Spark
    C、JAVA存储管理不同点
    数据库之一窥数据库系统
    Java单元测试-覆盖率分析报告自动生成
    Java单元测试-快速上手Junit(进阶)
    Java单元测试-快速上手Junit
  • 原文地址:https://www.cnblogs.com/lyt0207/p/14226110.html
Copyright © 2020-2023  润新知