美文网首页
jsES5----数组api学习

jsES5----数组api学习

作者: 大山的那边 | 来源:发表于2018-05-25 16:49 被阅读0次

    1.foreach(数组的每一个值,下标index,数组本身)

    arr.forEach(function(i,index,data){console.log(i,index,data)})

    1 0 (4) [1, 2, 3, 5]

    2 1 (4) [1, 2, 3, 5]

    3 2 (4) [1, 2, 3, 5]

    5 3 (4) [1, 2, 3, 5]

    2.map(function( 数组的每一个值 ){  return  ------- })

    返回一个新的数组, map方法的作用不难理解,“映射”嘛,也就是原数组被“映射”成对应新数组

    var arr = [1,2,3,5]

    arr.map(function(i){return i*2})

     [2, 4, 6, 10]

    3.filfilter  (function( 数组的每一个值 ){  return  ------- }) 

     对数组进行筛选  指数组filter后,返回过滤后的新数组。 这里可以进行有条件的返回

    默认进行 true / false 的判断

    var data = [0, 1, 2, 3];var arrayFilter = data.filter(function(item) { return item;});console.log(arrayFilter);// [1, 2, 3]


    4. some(function( 数组的每一个值 ){  return  ------- })

    some要求至少有1个值让callback返回true就可以了 不足在于,some只有有true即返回不再执行了。

    arr.some(function(i){ if (i>3){return 11}})

    true


    var scores = [5, 8, 3, 10];

    var current = 7;

    function higherThanCurrent(score) {

      return score > current;

    }

    if (scores.some(higherThanCurrent)) {

      alert("朕准了!");

    }

    5   ..every  

    6. indexof(查找的值,哪一个下标开始)  和  字符串的类似

    查不到返回 -1

    7.lastIndexOf     与6相反

     不同在于,从默认开始,跌第二个参数为array.length - 1而不是0.


    8.reduce (function( 之前值、当前值、索引值以及数组本身  ){  return  ------- })


    callback函数接受4个参数:之前值、当前值、索引值以及数组本身。

    var matrix = [ [1, 2], [3, 4], [5, 6]];// 二维数组扁平化var flatten = matrix.reduce(function (previous, current) { return previous.concat(current);});console.log(flatten);// [1, 2, 3, 4, 5, 6]

    相关文章

      网友评论

          本文标题:jsES5----数组api学习

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