zoukankan      html  css  js  c++  java
  • js中常用的数组方法

    • 在数组的尾部增加或删除某个元素:push() 和 pop()

      push() : 在数组的尾部追加一个或多个元素,并返回数组的长度

      pop():在数组的尾部删除一个元素,并返回被删除项

    1 var arr = ["aaa","bbb","ccc"];
    2 var pushRes = arr.push("ddd","eee");
    3 console.log(pushRes); // 5 (返回新数组的长度) 
    4 console.log(arr); // ["aaa", "bbb", "ccc", "ddd", "eee"]
    5 var popRes= arr.pop();
    6 console.log(popRes); // eee
    7 console.log(arr); // ["aaa", "bbb", "ccc", "ddd"]
    • 在数组的头部增加或删除某个元素:unshift() 和 shift() 

      unshift() : 在数组的头部插入一个或多个元素,并返回数组的长度

      shift():在数组的头部删除一个元素,并返回被删除项

    1 var arr = ["aaa","bbb","ccc"];
    2 var unshiftRes = arr.unshift("ddd","eee");
    3 console.log(unshiftRes); // 5 (返回新数组的长度) 
    4 console.log(arr); // [ "ddd", "eee", "aaa", "bbb", "ccc"] 
    5 var shiftRes= arr.shift(); 
    6 console.log(shiftRes); // ddd 
    7 console.log(arr); // ["eee", "aaa", "bbb", "ccc"]
    • 截取数组slice()

      slice(截取的起始位置,截取的结束位置)  slice可以有两个参数,第一个参数为必填项,第二个参数为选填项,当只有一个参数的时候,默认截取到数组的末尾;此外第二个参数可以有正数和负数两种情况,若第二个参数为负数截取的结束位置从末尾倒数过来

    1 var arr = [1,2,3,4,5];
    2 var arr1 = arr. slice(1);
    3 var arr2 = arr. slice(1,3);
    4 var arr3 = arr. slice(1,-1);
    5 var arr4 = arr. slice(-3,-1);
    6 console.log(arr1);   //[2,3,4,5]
    7 console.log(arr2);   //[2,3]
    8 console.log(arr3);   //[2,3,4]
    9 console.log(arr4);   //[3,4]
    • 数组万能法splice() 

      splice():很强大的数组方法,它有很多种用法,可以实现删除、插入和替换。

      删除:可以删除任意数量的项,只需指定 2 个参数:要删除的第一项的位置和要删除的项数。例如, splice(0,2)会删除数组中的前两项。

      插入:可以向指定位置插入任意数量的项,只需提供 3 个参数:起始位置、 0(要删除的项数)和要插入的项。例如,splice(2,0,4,6)会从当前数组的位置 2 开始插入4和6。
      替换:可以向指定位置插入任意数量的项,且同时删除任意数量的项,只需指定 3 个参数:起始位置、要删除的项数和要插入的任意数量的项。插入的项数不必与删除的项数相等。例如,splice (2,1,4,6)会删除当前数组位置 2 的项,然后再从位置 2 开始插入4和6。

      splice()方法始终都会返回一个数组,该数组中包含从原始数组中删除的项,如果没有删除任何项,则返回一个空数组。

     1 var arr = [1,3,5,7,9,11];
     2 var arrRemoved = arr.splice(0,2);
     3 console.log(arr); //[5,7, 9, 11]
     4 console.log(arrRemoved); //[1,3]
     5 var arrRemoved2= arr.splice(2,0,4,6);
     6 console.log(arr); //[5, 7, 4, 6, 9, 11]
     7 console.log(arrRemoved2); //[]
     8 var arrRemoved3 = arr.splice(1,1,2,4);
     9 console.log(arr); //[5, 2, 4, 4, 6, 9, 11]
    10 console.log(arrRemoved3); //[7]
    • 数组遍历forEach()
     1 var arr = [1,2,3,4,5]
     2 arr.forEach(function(item,index){
     3     console.log(index,item)   
     4 })
     5 //输出结果为:
     6 //0 1
     7 //1 2
     8 //2 3
     9 //3 4
    10 //4 5
    • 映射方法:map()
    1 var arr = [1,2,3,4,5];
    2 var arr2 = arr.map(function(item){
    3     return item+10;
    4 });
    5 console.log(arr2); //[11,12,13,14,15]
  • 相关阅读:
    递归
    HDU_oj_2041 超级楼梯
    树与森林——树与森林的遍历
    HUD_oj_2040 亲和数
    HDU_oj_2039 判定三角形
    HDU_oj_2037 今年暑假不AC
    多边形面积
    HDU_oj_2036 改革春风吹满地(多边形面积)
    【转发】【composer】composer 命令行介绍
    【chm】【windows】win7下chm打开不显示内容
  • 原文地址:https://www.cnblogs.com/hj0711/p/9596732.html
Copyright © 2011-2022 走看看