精华内容
下载资源
问答
  • Javascript迭代数组

    2017-01-28 16:50:20
    map 方法可以方便的迭代数组,例子:var timesFour = oldArray.map(function(val){ return val * 4; });map方法会迭代数组中的每一个元素,并根据回调函数来处理每一个元素,最后返回一个新数组。注意,这个方法...

    1.map
    map 方法可以方便的迭代数组,例子:

    var timesFour = oldArray.map(function(val){
      return val * 4;
    });

    map方法会迭代数组中的每一个元素,并根据回调函数来处理每一个元素,最后返回一个新数组。注意,这个方法不会改变原始数组。

    在我们的例子中,回调函数只有一个参数,即数组中元素的值 (val 参数) ,但其实,你的回调函数也可以支持多个参数,譬如:元素的索引index、原始数组arr。

    2.reduce
    数组方法 reduce 用来迭代一个数组,并且把它累积到一个值中。

    使用 reduce 方法时,你要传入一个回调函数,这个回调函数的参数是一个累加器(比如例子中的previousVal)和当前值(currentVal)。

    reduce方法有一个可选的第二参数,它可以被用来设置累加器的初始值。如果没有在这定义初始值,那么初始值将变成数组中的第一项,而 currentVal 将从数组的第二项开始。

    下面的例子使用了 reduce 来让数组中的所有值相减:

    var singleVal = array.reduce(function(previousVal, currentVal) {
      return previousVal - currentVal;
    }, 0);

    3.filter
    filter方法用来迭代一个数组,并且按给出的条件过滤出符合的元素。

    filter方法传入一个回调函数,这个回调函数会携带一个参数,参数为当前迭代的项(我们叫它 val )。

    回调函数返回 true 的项会保留在数组中,返回 false 的项会被过滤出数组。

    下面的代码示例展示了使用 filter 来移除数组中值等于5的项:

    注意: 我们忽略了第二参数和第三参数,因为例子中我们只需要第一参数就够了。

    array = array.filter(function(val) {
      return val !== 5;
    });

    4.sort
    使用sort方法,你可以很容易的按字母顺序或数字顺序对数组中的元素进行排序。

    与我们之前用的数组方法仅仅返回一个新数组不同, sort 方法将改变原数组,返回被排序后的数组。

    sort 可以把比较函数作为参数传入。比较函数有返回值,当 a 小于 b,返回一个负数;当 a 大于 b ,返回一个正数;相等时返回0。

    如果没有传入比较函数,它将把值全部转成字符串,并按照字母顺序进行排序。

    下面的例子将展示sort的使用,传入的比较函数把元素按照从小到大的顺序进行排列:

    var array = [1, 12, 21, 2];
    array.sort(function(a, b) {
      return a - b;
    });

    5.reverse
    你可以使用 reverse 方法来翻转数组。

    var myArray = [1, 2, 3];
    myArray.reverse();

    结果myArray 变成了 [3, 2, 1]。

    6.concat
    concat 方法可以用来把两个数组的内容合并到一个数组中。

    concat方法的参数应该是一个数组。参数中的数组会拼接在原数组的后面,并作为一个新数组返回。

    下面是一个拼接数组的例子,用concat把otherArray拼接在oldArray 的后面:

    newArray = oldArray.concat(otherArray);

    7.split
    你可以使用 split 方法按指定分隔符将字符串分割为数组。

    你要给 split 方法传递一个参数,这个参数将会作为一个分隔符。

    下面的例子展示了 split 方法的使用,按照 s 字母进行分割:

    var array = string.split('s');

    如果有这样一个字符串:”jb51.net,google.com,baidu.com_weibo.com_haotu.net”,
    我们希望同时按照逗号和下划线对网站地址进行分割,参考下面的代码:

    var mystring = "jb51.net,google.com,baidu.com_weibo.com_haotu.net";
    var myarray = mystring.split(/[,_]/);

    8.join
    我们还可以使用 join 方法来把数组转换成字符串,里面的每一个元素可以用你指定的连接符来连接起来,这个连接符就是你要传入的参数。

    下面展示了使用 join 来将数组中的每一项放入字符串,并用 and 进行连接:

    var veggies = ["Celery", "Radish", "Carrot", "Potato"];
    var salad = veggies.join(" and ");
    console.log(salad); // "Celery and Radish and Carrot and Potato" 
    展开全文
  • 下面本篇文章就来给大家介绍一下使用JavaScript迭代数组的一些方法,,希望对大家有所帮助。 方法1:使用for循环 <script> array = [ 1, 2, 3, 4, 5, 6 ]; for (index = 0; index < array.length; ....

    Javascripts中的数组是用于存储不同类型元素的单个变量;可以使用多种方法来迭代数组。下面本篇文章就来给大家介绍一下使用JavaScript迭代数组的一些方法,,希望对大家有所帮助。

    方法1:使用for循环

    <script> 
    array = [ 1, 2, 3, 4, 5, 6 ]; 
    for (index = 0; index < array.length; index++) { 
        console.log(array[index]); 
    } 
    </script>

    输出:

    bc7ea18c58d432d749fca0cbc6dcc51.png

    方法2:使用while循环

    <script> 
    index = 0; 
    array = [ 1, 2, 3, 4, 5, 6 ]; 
      
    while (index < array.length) { 
        console.log(array[index]); 
        index++; 
    }
    </script>

    输出:

    65fbd850cbb4d220754172c7968d795.png

    方法3:使用forEach方法

    forEach方法可按顺序为每个数组元素调用一次所提供的函数。

    <script> 
    index = 0; 
    array = [ 1, 2, 3, 4, 5, 6 ]; 
      
    array.forEach(myFunction); 
    function myFunction(item, index) 
    { 
        console.log(item); 
    }
    </script>

    输出:

    56747a571783db138d486021a65ce31.png

    方法4:使用map

    map可将函数应用于每个元素,然后返回新数组。

    <script> 
    index = 0; 
    array = [ 1, 2, 3, 4, 5, 6 ]; 
      
    square = x => Math.pow(x, 2); 
    squares = array.map(square); 
    console.log(array); 
    console.log(squares);
    </script>

    输出:

    60d82dae6d116d9f93741be1b536759.png

    推荐阅读:

    java基础教程

    layui框架

    go语言教程

    展开全文
  • Array.reduce()reduce() 方法在每个数组元素上运行函数,以生成(减少它)单个值。reduce() 方法在数组中从左到右工作。另请参见 reduceRight()。reduce() 方法不会减少原始数组。这个例子确定数组中所有数字的总和:...

    Array.reduce()

    reduce() 方法在每个数组元素上运行函数,以生成(减少它)单个值。

    reduce() 方法在数组中从左到右工作。另请参见 reduceRight()。

    reduce() 方法不会减少原始数组。

    这个例子确定数组中所有数字的总和:

    实例var numbers1 = [45, 4, 9, 16, 25];var sum = numbers1.reduce(myFunction);function myFunction(total, value, index, array) { return total + value;}

    请注意此函数接受 4 个参数:总数(初始值/先前返回的值)

    项目值

    项目索引

    数组本身

    上例并未使用 index 和 array 参数。可以将它改写为:

    实例var numbers1 = [45, 4, 9, 16, 25];var sum = numbers1.reduce(myFunction);function myFunction(total, value) { return total + value;}

    reduce() 方法能够接受一个初始值:

    实例var numbers1 = [45, 4, 9, 16, 25];var sum = numbers1.reduce(myFunction, 100);function myFunction(total, value) { return total + value;}

    所有浏览器都支持 Array.reduce(),除了 Internet Explorer 8 或更早的版本:Yes9.0YesYesYes

    展开全文
  • ES5为数组定义了5个迭代方法。每种方法都接收两个参数。要在每一项上运行的函数和(可选的)运行该函数的作用域对象--影响this的值。//其中(可选的)这个参数暂时未遇到过。其中,函数都接收三个参数(数组中的每一项、...

    ES5为数组定义了5个迭代方法。每种方法都接收两个参数。要在每一项上运行的函数和(可选的)运行该函数的作用域对象--影响this的值。//其中(可选的)这个参数暂时未遇到过。

    其中,函数都接收三个参数(数组中的每一项、每一项的索引值、数组对象本身)。

    下面是5中方法的介绍:

    every() : 对数组中的每一项执行函数,如果每一项都返回 true ,则该方法返回 true。

    some():     对数组中的每一项执行函数,只要有一项返回了 true ,则该方法返回 true。

    filter():       对数组中的每一项执行函数,把里面返回 true 的项,组成一个数组返回。

    forEach()  对数组中的每一项执行函数,没有返回值。类似于for循环。

    map()       对数组中的每一项执行函数,返回(处理后的)每一项。

    以上5种方法,都不会改变数组本身。

    forEach和map的比较:

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

    //every() filter() some() forEach() map()

    var res = arr.every(function(i,index,o){

    return i>2;

    });

    console.log(arr); //[1,2,3,4,5]

    console.log(res); //false

    var some = arr.some(function (i, k, l) {

    return i>2;

    });

    console.log(arr);//[1,2,3,4,5]

    console.log(some);//true

    var filter = arr.filter(function (i, k, l) {

    return i>2;

    });

    console.log(arr);//[1,2,3,4,5]

    console.log(filter);//[3,4,5]

    var forEach = arr.forEach(function (i, k, l) {

    return i>2;

    });

    console.log(arr);//[1,2,3,4,5]

    console.log(forEach);//undefined

    var map = arr.map(function (i, k, l) {

    return i>2;

    });

    console.log(arr);//[1,2,3,4,5]

    console.log(map);//[false,false,true,true,true]

    以上就是本文的全部内容,希望对大家的学习有所帮助,也希望大家多多支持脚本之家。

    展开全文
  • JavaScript 中循环迭代数组的方法有很多种。抽时间简单的归纳一下,我们先从经典的方法开始,然后转向新标准提供的方法。while 循序语句while 语句只要指定的条件求值为...
  • Ext迭代数组访问数据

    2019-03-10 21:48:55
    Ext迭代数组访问数据 转载:https://blog.csdn.net/laozitianxia/article/details/7085065 在javascript中,我们常用到访问一个数组 Ext3.0文档 each(Array/NodeList/Mixed array, Function fn, Object...
  • JavaScript 中循环迭代数组的方法有很多种。抽时间简单的归纳一下,我们先从经典的方法开始,然后转向新标准提供的方法。while 循序语句while 语句只要指定的条件求值为true,就会一直执行它的语句块。JavaScript...
  • <p>I thought that I was approaching this correctly but it appears not. <p>I have the following function: <pre><code>function oMain(){ var allMyData = <... echo htmlspecialchars($jsData, ENT_...
  • 在编写脚本的时候将常用到迭代如: var list=[1,2,3,4];  for(var i=0,i<list.length,i++)  {  alert(list[i]);  } 也可以写成 var list=[1,2,3,4];  for(var i in list)  {  alert...
  • javascript数组迭代方法 转载于:https://www.cnblogs.com/knuzy/p/9944839.html
  • 数组迭代方法 Array.forEach() forEach() 方法为每个数组元素调用一次函数(回调函数); var txt = ""; var numbers = [45, 4, 9, 16, 25]; numbers.forEach(myFunction); function myFunction(value, index, ...
  • JavaScript数组迭代方法

    2020-10-20 07:14:59
    本文主要介绍了JavaScript数组迭代方法,具有很好的参考价值。下面跟着小编一起来看下吧
  • 遍历数组可以通过循环来完成,循环次数要小于数组长度,也可以运用迭代arr.forEach()来做 数组可以查找,增加,删除等操作,具体如下 <script> let arr=[11,22,33,44,22,33,55],arr1=[22] a
  • JavaScript数组五大迭代方法总结

    千次阅读 2016-10-08 19:16:15
    JavaScript数组迭代方法总结
  • 文章来源 :https://www.cnblogs.com/shuiyi/p/5058524.html 转载于:https://www.cnblogs.com/lvmylife/p/9430052.html
  • 前言:JavaScript数据的迭代方法如果可以被被我们灵活的使用,可以达到出其不意的效果! ES5为数组定义了5个迭代的方法。 every():对数组中的每一项运行给定函数,如果该函数对每一项都返回 true,则返回 true...
  • 主要介绍了JavaScript数组迭代器的用法,涉及javascript数组操作的相关技巧,需要的朋友可以参考下
  • 数组迭代和归并 迭代方法 ECMAScript 5 为数组定义了5 个迭代方法。每个方法都接收两个参数:要在每一项上运行的函数和(可选的)运行该函数的作用域对象——影响this 的值。 传入这些方法中的函数会接收三个参数...
  • 主要为大家详细介绍了javaScript数组迭代方法,ECMAScript5为数组定义了5个迭代方法,感兴趣的小伙伴们可以参考一下
  • next,index,array)=>{ },[number]) //例 let a=[1,2,3,4,5] a.reduce((pre,next,index,array)=>{ return pre+next }) //15 参数数组第一项、数组第二项、索引、数组执行完一次后pre都会被上次的结果替换,next则会...

空空如也

空空如也

1 2 3 4 5 ... 20
收藏数 1,191
精华内容 476
关键字:

javascript迭代数组

java 订阅