zoukankan      html  css  js  c++  java
  • array中新增的方法

    reduce:
    描述:对数组中的所有元素调用指定的回调函数。 该回调函数的返回值为累积结果,并且此返回值在下一次调用该回调函数时作为参数提供。
    语法:array.reduce(callback [, initValue])
    参数:
    callback 一个接受最多四个参数的函数。 对于数组中的每个元素,reduce 方法都会调用 callback 函数一次。
    previousValue: 通过上一次调用回调函数获得的值,如果reduce方法提供了initValue,则在首次调用函数时previousValue = initValue
    currentValue: 当前数组元素的值
    currentIndex: 当前数组元素的数字索引
    array: 该数组
    返回值:返回最后一次调用回调函数获得的累计结果
    备注:如果提供了initValue,则reduce方法会对数组中的每个元素调用一次callback(按升序顺序)。如果未提供initValue,则reduce方法会对从第二个元素开始的每个元素调用callback函数
    回调函数的返回值在下一次调用回调函数时作为previousValue参数提供。最后一次调用回调函数获得的返回值为reduce方法的返回值。不为数组中缺少的元素调用该回调函数。

     1 var arr = [1,2,3,4,5];
     2 
     3   function callback(previousValue, currentValue, index, arr)
     4   {
     5         var result = previousValue + currentValue;
     6         console.log(result);
     7         return result;
     8   }
     9 
    10   arr.reduce(callback);
    View Code

    map:
    描述:对数组的每个元素调用定义的回调函数并返回包含结果的数组。
    语法:array.map(callback [,thisArg])
    参数:
    callback: 最多可以接受三个参数的函数。 对于数组中的每个元素,map 方法都会调用 callbackfn 函数一次。
    value: 数组元素的值
    index: 索引值
    array: 该数组
    thisArg: callbackfn 函数中的 this 关键字可引用的对象。 如果省略 thisArg,则 undefined 将用作 this 值。
    返回值:一个新数组,其中的每个元素均为关联的原始数组元素的回调函数返回值。
    备注:对于数组中的每个元素,map 方法都会调用 callback 函数一次(采用升序索引顺序)。 将不会为数组中缺少的元素调用回调函数。
    除了数组对象之外,map 方法可由具有 length 属性且具有已按数字编制索引的属性名的任何对象使用。

    1 var arr = [1,2,3,4,5];
    2 
    3     function callback(value, index, arr){
    4         return value*value;
    5     }
    6 
    7     arr.map(callback);
    View Code

    filter:
    描述:返回数组中的满足回调函数中指定的条件的元素。
    语法:array.filter(callback [,thisArg])
    参数:
    callback: 一个接受最多三个参数的函数。 对于数组中的每个元素,filter 方法都会调用 callbackfn 函数一次。
    value: 数组元素的值
    index: 索引值
    array: 该数组
    thisArg: 可在 callback 函数中为其引用 this 关键字的对象。 如果省略 thisArg,则 undefined 将用作 this 值。
    返回值:一个包含回调函数为其返回 true 的所有值的新数组。 如果回调函数为 array 的所有元素返回 false,则新数组的长度为 0。
    备注:对于数组中的每个元素,filter 方法都会调用 callback 函数一次(采用升序索引顺序)。 不为数组中缺少的元素调用该回调函数。
    除了数组对象之外,filter 方法可由具有 length 属性且具有已按数字编制索引的属性名的任何对象使用。

     1 var arr = [1,2,3,4,5];
     2 
     3 function callback(value, index, arr){
     4     if(value%2 == 0){
     5         return false;
     6     }
     7     return true;
     8 }
     9 
    10 arr.filter(callback)    
    View Code

    some:
    描述:确定指定的回调函数是否为数组中的任何元素均返回true
    语法:array.some(callback [,thisArg])
    参数:
    callback:一个接受最多三个参数的函数。 some 方法会为 array 中的每个元素调用 callback 函数,直到 callbackfn 返回 true,或直到到达数组的结尾。
    value: 数组元素的值
    index: 索引值
    array: 该数组
    thisArg: 可在 callback 函数中为其引用 this 关键字的对象。 如果省略 thisArg,则 undefined 将用作 this 值。
    返回值:如果 callback 函数为任何数组元素均返回 true,则为 true;否则为 false。
    备注: some 方法会按升序索引顺序对每个数组元素调用 callback 函数,直到 callbackfn 函数返回 true。 如果找到导致 callback 返回 true 的元素,则 some 方法会立即返回 true。 如果回调不对任何元素返回 true,则 some 方法会返回 false。
    不为数组中缺少的元素调用该回调函数。
    除了数组对象之外,some 方法可由具有 length 属性且具有已按数字编制索引的属性名的任何对象使用。

     1 var arr = [1,2,3,4,5];
     2 
     3 function callback(value, index, arr){
     4     console.log(value);
     5     if(value == 4){
     6         return true;
     7     }
     8     return false;
     9 }
    10 
    11 arr.some(callback);        
    View Code

    every:
    描述:确定数组的所有成员是否满足指定的测试。
    语法:array.every(callback [,thisArg])
    参数:
    callback: 一个接受最多三个参数的函数。 every 方法会为 array 中的每个元素调用 callback 函数,直到 callback 返回 false,或直到到达数组的结尾。
    value: 数组元素的值
    index: 索引值
    array: 该数组
    thisArg: 可在 callback 函数中为其引用 this 关键字的对象。 如果省略 thisArg,则 undefined 将用作 this 值。
    返回值:如果 callback 函数为所有数组元素返回 true,则为 true;否则为 false。 如果数组没有元素,则 every 方法将返回 true。
    备注:every 方法会按升序顺序对每个数组元素调用一次 callback 函数,直到 callback 函数返回 false。 如果找到导致 callback 返回 false 的元素,则 every 方法会立即返回 false。 否则,every 方法返回 true。
    不为数组中缺少的元素调用该回调函数。
    除了数组对象之外,every 方法可由具有 length 属性且具有已按数字编制索引的属性名的任何对象使用。

     1 var arr = [1,2,3,4,5];
     2 
     3 function callback(value, index, arr){
     4     console.log(value);
     5     if(value > 0){
     6         return true;
     7     }
     8     return false;
     9 }
    10 
    11 arr.every(callback);
    View Code

    forEach:
    描述:该方法让数组中的每一项都执行一次给定的函数
    语法:array.forEach(callback [, thisArg])
    参数:
    callback 在数组每一项上执行的函数,该函数接收三个参数
    currentValue: 当前项的值
    index: 索引
    array: 数组本身
    thisArg 可选。用来当作callback函数内this的值的对象
    备注:对于数组中出现的每个元素,forEach 方法都会调用 callback 函数一次(采用升序索引顺序)。 将不会为数组中缺少的元素调用回调函数。
    除了数组对象之外,forEach 方法可由具有 length 属性且具有已按数字编制索引的属性名的任何对象使用。
    forEach 方法不直接修改原始数组,但回调函数可能会修改它

    1 var arr = [1,2,3,4,5];
    2 
    3 function callback(value, index, arr){
    4     console.log('第'+ index +'个元素是:' + value);
    5 }
    6 
    7 arr.forEach(callback);
    View Code

    indexOf:
    描述:返回某个值在数组中的第一个匹配项的索引。
    语法:array.indexOf(searchElement, [,formIndex])
    参数:
    searchElement: 要在array中定位的值
    formIndex: 用于开始搜索的数组索引。 如果省略 fromIndex,则从索引 0 处开始搜索.
    返回值:数组中的 searchElement 的第一个匹配项的索引;如果未找到 searchElement,则为 -1。
    备注:数组元素将与 searchElement 值进行全等比较,与 === 运算符类似。 有关更多信息,请参见比较运算符 (JavaScript)。
    可选 fromIndex 参数指定用于开始搜索的数组索引。 如果 fromIndex 大于或等于数组长度,则返回 -1。 如果 fromIndex 为负,则搜索从数组长度加上 fromIndex 的位置处开始。

    1 var obj1 = {name: 'lee', age: 18}, obj2 = {name: 'lucy', age: 18}, obj3 = {name: 'Jam', age: 18};
    2 var arr = [obj1, obj2, obj3];
    3 
    4 arr.indexOf(obj2);
    View Code
  • 相关阅读:
    Ubuntu之修改用户名和主机名
    HM中CU,TU的划分
    BZOJ 3237([Ahoi2013]连通图-cdq图重构-连通性缩点)
    Introducing Regular Expressions 学习笔记
    kubuntu添加windows字体
    WISE安装程序增加注册控制
    Linux内核中常见内存分配函数(一)
    Linux内核中常见内存分配函数(二)
    Swift现实
    Android 5.0(L) ToolBar(替代ActionBar) 现实(四)
  • 原文地址:https://www.cnblogs.com/fengqingyang800/p/4721673.html
Copyright © 2011-2022 走看看