JavaScript30-7 数组的一些基本方法

来源:http://www.chinese-glasses.com 作者:Web前端 人气:160 发布时间:2020-03-24
摘要:时间: 2019-11-05阅读: 61标签: 过滤 本次来学习数组的一些方法,之前学习的js数组的方法是在第四课里面(没有写到随笔里面) 1、filter()方法创建一个新的数组,新数组中的元素是通过检

时间: 2019-11-05阅读: 61标签: 过滤

本次来学习数组的一些方法,之前学习的js数组的方法是在第四课里面(没有写到随笔里面)

1、filter() 方法创建一个新的数组,新数组中的元素是通过检查指定数组中符合条件的所有元素。

之前第四课主要讲的是 filter() ,map() 这次课程主要介绍的是 some()`、`every()`、`find()`、`splice()`、`slice()`.

原数组不变不会对空数组进行检测

之后会总结一篇关于数组的文章。

let arr1 = [1,2,3,4]let arr2 = arr1.filter(item=item===1)console.log(arr1, 'arr1') // [1,2,3,4] arr1console.log(arr2, 'arr2') // [1] arr2 let arr3 = [{ id:1, name:'aa', desc: 'aaaa' },{ id:2, name:'bb' },{ id:3, name: 'aa' }]let arr4 = arr3.filter(item=item.name === 'aa')console.log(arr4, 'arr4') // [{id:1,name:'aa', desc:'aaaa'},{id:3,name:'aa'}] arr4

2、find() 对于空数组,函数是不会执行的。

 

不会改变原数组返回符合测试条件的第一个数组元素值

some()

some() 方法用于检测数组中的元素是否满足指定条件(函数提供)。

some() 方法会依次执行数组的每个元素:

  • 如果有一个元素满足条件,则表达式返回true , 剩余的元素不会再执行检测。
  • 如果没有满足条件的元素,则返回false。

注意: some() 不会对空数组进行检测。

注意: some() 不会改变原始数组。

来看看代码示例

const people = [
      { name: 'Wes', year: 1988 },
      { name: 'Kait', year: 1986 },
      { name: 'Irv', year: 1970 },
      { name: 'Lux', year: 2015 }
    ];

    const comments = [
      { text: 'Love this!', id: 523423 },
      { text: 'Super good', id: 823423 },
      { text: 'You are the best', id: 2039842 },
      { text: 'Ramen is my fav food ever', id: 123523 },
      { text: 'Nice Nice Nice!', id: 542328 }
    ];

 数据上,给了两组数据来作为测试数据。

例如,我们想知道  是否有人超过 19 岁? 

这个时候可以使用some()

es6


const isAdult = people.some( person => {
        const currentYear = (new Date()).getFullYear();
        return currentYear - person.year >= 19;
    });


es5


 const isAult = people.some(function(person) {

      const jinnian = (new Date()).getFullYear();//今年
      if(  jinnian - person.year >19 )
        return true;

    });

 

本文由10bet发布于Web前端,转载请注明出处:JavaScript30-7 数组的一些基本方法

关键词:

频道精选

最火资讯