zoukankan      html  css  js  c++  java
  • 数组常见方法下

    在ECMAScript5中为数组定义了5个迭代方法,every()、filter()、forEach()、map()和some(),每个方法都接受两个参数:要在每一项上运行的函数和(可选的)运行该函数的作用域对象——影响this的值。传入的这些方法中的函数会接收三个参数:数组项的值、该项在数组中的位置和数组对象本身。根据使用的方法不同,这个函数执行后的返回值可能会也可能不会影响访问的返回值。

    every()

    every()方法用于检测数组所有元素是否都符合指定条件,对数组中的每一项运行给定函数,如果数组中检测到一个元素不满足,则整个表达式返回false,且剩余的元素不会再进行检测,如果所有元素都满足条件,则返回true。

     filter()

    filter()方法在不改变原数组的情况下,创建一个新的数组,新数组中的元素是通过检查指定数值中符合条件的所有元素:filter()把传入的函数依次作用于每个元素,然后根据返回值是true还是false决定保留还是丢弃该元素。

    filter()接收的回调函数,其实可以有多个参数。通常我们仅使用第一个参数,表示Array的某个元素。回调函数还可以接收另外两个参数,表示元素的位置和数组本身。在之前的数组方法中,我们知道indexOf总是返回元素的第一个位置,后续的重复元素位置与indexOf返回的位置不相等,利用这一特性,我们可以使用filter()方法进行数组去重。

     map()

    map()方法根据调用的函数,依次处理原数组的元素,返回一个处理后的新数组,而不改变原来的数组。

    forEach()

    forEach()方法用于调用数组的每个元素,并将元素传递给回调函数。这个方法执行是没有返回值的,对原来数组也没有影响;但是我们可以自己通过数组的索引来修改原来的数组。

    some()

    some()方法用于检测数组中的元素是否满足调用函数所指定条件,如果有一个元素满足,则表达式返回true,剩余的元素不会再执行检测,如果没有满足条件的元素,则返回false。

  • 相关阅读:
    使用 Spring data redis 结合 Spring cache 缓存数据配置
    Spring Web Flow 笔记
    Linux 定时实行一次任务命令
    css js 优化工具
    arch Failed to load module "intel"
    go 冒泡排序
    go (break goto continue)
    VirtualBox,Kernel driver not installed (rc=-1908)
    go运算符
    go iota
  • 原文地址:https://www.cnblogs.com/yuyujuan/p/9107865.html
Copyright © 2011-2022 走看看