(68)Wangdao.com第十一天_JavaScript 数组的常用方法

数组的常用方法:

  • 向数组末尾添加一个或多个元素,返回新长度
    • var arr = new Array();
      arr.push("唐僧");    // 返回 1

       

  • 删除数组最后一个元素,返回该值
    • document.write(arr.pop());    // 打印数组最后一个元素,并删除这个元素

       

  • 在数组开头添加一个或多个元素,返回新长度
    • arr.unshift("玉帝","如来");

       

  • 删除数组第一个元素,返回该值
    • document.write(arr.shift());    // 打印  "玉帝"

       

  • 返回数组的一部分,但不影响原数组 Array.slice(start , 个数)
    • var arr = [0,1,2,3];
      document.write( arr.slice(0,3) );    // 打印 0 1 2

      当不写元素个数时,将会返回从开始位置到最后的所有元素。

  • 删除数组中指定片段的元素
    • var arr = [0,1,2,3,4,5,6,7,8,9];
      
      document.write(arr.splice(0,3));    // 删除从 [0] 开始的 3 个元素
      // 此时,数组为 [3,4,5,6,7,8,9]
      document.write("<br />");
      
      document.write(arr.splice(0,1,0,11,22,33));    // 3
      console.log(arr);    // [0, 11, 22, 33, 4, 5, 6, 7, 8, 9]
      
      // 在 js 中写 00 会出错,写 0 没问题

       

  • 合并两个或者多个数组,返回一个新的数组。。。不对原数组产生影响
    • var arr = [0,1,2];
      var brr = ["00","11","22"];
      
      var newArr = arr.concat(brr);
      console.log(newArr);
      // [0, 1, 2, "00", "11", "22"]    新的数组在后面
      
      
      var newArr = arr.concat(brr,newArr,["牛魔王","铁扇公主"]);
      var newBrr = arr.concat(brr,newArr,"牛魔王","铁扇公主");
      console.log(newArr);
      // [0, 1, 2, "00", "11", "22", 0, 1, 2, "00", "11", "22", "牛魔王", "铁扇公主"]

       

  • 将数组转换成一个字符串
    • var arr = [0,1,2];
      var brr = ["00","11","22"];
      
      var newArr = arr.concat(brr);
      console.log(newArr);     // [0, 1, 2, "00", "11", "22"]    新的数组在后面
      
      // 不指定,默认以逗号分隔
      var newStr = newArr.join();    // "0,1,2,00,11,22"
      console.log(newStr);
      
      // 不指定,默认以逗号分隔
      var newStr = newArr.join("");    // ""012001122"
      console.log(newStr);

       

  • arr.reverse() 数组的反转,即颠倒数组元素的顺序
    • var arr = [0,1,2,3,4,5,6];
      
      arr.reverse();    // 将会对原数组产生影响
      console.log(arr);    // [6, 5, 4, 3, 2, 1, 0]

       

  • arr.sort() 对数组进行排序 
    • var arr = [0,1,2,3,9,8,7,6,5,4];
      
      arr.sort(function(a,b){
                      return b-a;    // 为降序 [9, 8, 7, 6, 5, 4, 3, 2, 1, 0]
                      // retuen a-b;    //为升序 [0, 1, 2, 3, 4, 5, 6, 7, 8, 9]
                  });
      console.log(arr);

      以回调函数指定排序方式,sort() 会往回调函数传递俩个参数。。。返回值大于0则交换位置

posted @ 2018-09-26 20:09  耶梦加德  阅读(164)  评论(0编辑  收藏  举报