美文网首页
详述数组迭代方法every()、filter()、forEach

详述数组迭代方法every()、filter()、forEach

作者: 你这个人真的是 | 来源:发表于2017-04-15 16:32 被阅读0次

            every()、filter()、some()、forEach()、map() 这五个方法是ECMAScript5为数组定义的,有了这些方法,可以大大方便处理数组的任务。每个方法均可接收两个参数:在每一项上运行的函数和运行该函数的作用域对象(可选的),通过这个对象可改变this的值。  第一个参数的函数可以接收三个参数:数组的值、该项在数组中的位置和数组对象本身。下列介绍这五个方法的作用。

    1、every():如果该函数对每一项都返回true,则返回true;

    var arr = [1,3,50,23,5,6];

    var result = arr.every(function(item,index,arr) {

          return item >10;

    });

    console.log(result);//false,只有所有的项都满足时才返回true

    2、filter():返回true的项所组成的数组;

    var arr = [1,3,50,23,5,6];

    var result1 = arr.filter(function(item) {

           return item >10;

    })

    console.log(result1)//[50,23],返回所有符合条件组成的数组

    3、forEach():对数组的每一项运行给定的函数,该方法没有返回值;

    var arr = [1,3,50,23,5,6];

    var result2 = arr.forEach(function(item) {//该项没有返回值

            //执行某些操作

    })

    4、map():返回每次函数调用的结果所组成的数组;

    var arr = [1,3,50,23,5,6];

    var result4 = arr.map(function(item) {

    return item *2;

    })

    console.log(result4);//[2,6,100,46,10,12]返回每项返回值组成的数组

    5、some():如果返回的项中有一项为true,则返回true。

    var arr = [1,3,50,23,5,6];

    var result3 = arr.some(function(item) {

         return item >10

    })

    console.log(result3);//true,只要有一项符合条件就返回true

    相关文章

      网友评论

          本文标题:详述数组迭代方法every()、filter()、forEach

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