• javascript数组浅谈3


    前两节说了数组最基本的创建,队列方法,排序和一些操作方法,这节说说迭代和归并方法。

        every()方法 & some()方法

    这两个方法会对数组中的每一项运行给定函数,然后返回一个布尔值,理解起来可以当成everyone和someone的区别来理解,看个例子就好了:

    var  arr=[1,2,3,4,5];
    var everyResult=arr.every(function(item,index,arr){
    
          return (item>2);     
    })        //false
    var someResult=arr.some(function(item,index,arr){
     
           return (item>2);     
    })        //true

    两个方法都执行一个函数,函数的第一个参数表示迭代的每个数组元素,第二个参数表示下标,第三个参数表示该数组。

        filter()方法

    1 var arr=[1,2,3,4,5]
    2 var filterResult=arr.filter(function(item,index,arr){
    3        return (item>2)
    4 })    //[3,4,5]

    该方法对数组中每一项执行给定函数,返回该函数会返回true的项所组成的数组。

        map()方法 & forEach()方法

    map()返回每次函数调用的结果组成的数组,forEach()则没有返回值。

    1 var arr=[1,2,3,4,5]
    2 var mapResult=arr.map(function(item,index,arr){
    3        return item*2
    4 })    //[2,4,6,8,10]
    5 var forResult=arr.forEach(function(item,index,arr){
    6        //可执行一些操作
    7 })    //undefined

    forEach()本质上与使用for循环迭代数组一样。

        reduce()方法 & reduceRight()方法

    1 var arr=[1,2,3];
    2 arr.reduce(function(x,y,index,arr){
    3 
    4       return x+y
    5 },0);    //6

    这两个方法都有两个参数,第一个是一个要执行的回调函数,第二个表示要作为归并基础的初始值(可选)。

        indexOf()方法 & lastIndexOf()

    1 var arr=[1,2,3,4,5];
    2 arr.indexOf(1,-1);    //-1
    3 arr.lastIndexOf(1,-1)    //0

    接收两个参数,第一个表示要查找的元素,第二个表示开始位置,如果有则返回该元素在该数组中的位置下标,没有则返回-1

        数组大概就总结这么多,同时数组也是对象,以后会在对象的学习总结中再来探讨。

  • 相关阅读:
    week4:周测错题
    小程序1:登录/注册小程序
    小程序2:实现一个购物车
    day26:装饰器&面向对象当中的方法&property
    day25:7个魔术方法&5个关于类的魔术属性
    day24:多态&魔术方法__new__&单态模式
    day23:单继承&多继承&菱形继承&__init__魔术方法
    day22:面向对象封装对象操作&类操作&面向对象删除操作
    day21:正则函数&模块和包(import)
    APP探索之iAPP
  • 原文地址:https://www.cnblogs.com/wangxiaosan/p/5505486.html
Copyright © 2020-2023  润新知