js数组

数组

  • 使用Array构造函数来实现数组
    var arr = new Array();//空数组
    var arr = new Array(1,2,3,4);//实数组

  • 使用for循环可以遍历js数组

      var arr = new Array(1,2,3,4);
      for(var i=0;i
  • 使用for in循环也可以遍历js数组

      var mycars = new Array()
      mycars[0] = "Saab"
      mycars[1] = "Volvo"
      mycars[2] = "BMW"
      for (var x in mycars) {
          document.write(mycars[x] + "
    ") }
  • push(元素):将一个或多个新元素添加到数组结尾,并返回数组新长度。

      var a = [1,2,3,4,5];
      a.push(6,7);
    
  • unshift(元素):将一个或多个新元素添加到数组开始,数组中的元素自动后移,返回新数组长度。

      var a = [1,2,3,4,5];
      a.unshift(-2,-1);
    
  • pop(); 移除最后一个元素并返回该元素值

      var a = [1,2,3,4,5];
      a.pop();
    
  • shift();移除最前一个元素并返回该元素值,数组中元素自动前移。

      var a = [1,2,3,4,5];
      a.shift();
    
  • splice(开始位置,删除长度)

      var a = [1,2,3,4,5];
      a.splice(1,2)
    
  • splice(开始位置,删除长度,插入的元素)

      var a = [1,2,3,4,5];
      a.splice(1,2,[3,3,3])
    
  • concat()连接两个数组,返回一个新数组(不会改变原数组)

      var a = [1,2,3,4,5];
      var b = [6,7,8];
      var c = a.concat(b);
    
  • 数组元素的字符串化,join(分隔符)用分隔符,组合数组元素,生成字符串。省略分隔符话则用默认用逗号为分隔符

      var a = [1,2,3,4,5];
      var b = a.join("/")
    
  • reverse();反转元素(最前的排到最后、最后的排到最前),返回数组地址

      var a = [1,2,3,4,5];
      a.reverse();
    
  • sort(sortby);调用数组每个元素的toString()方法。然后对数组元素排序,返回数组地址。

    • 当sortby参数不存在时,将按字母顺序对数组中的元素进行排序。

        var arr = ["p","z","e","c"];
        arr.sort();
      
    • 如果是数字,将以字符串的形式比较大小,所以要使用sortby参数定义排序规则

        var a=[15,8,25,3]; 
        a.sort(function(a, b) { return a-b;}); //[3,8,15,25]
      

    解释:a,b表示数组中的任意两个元素,若return > 0 b前a后;reutrn < 0 a前b后;a=b时位置不动
    简化一下:a-b输出从小到大排序,b-a输出从大到小排序。

          var a=["1px","12px","17px","8px","2px","21px"];
          a.sort(function(a,b){
              a = parseInt(a)
              b = parseInt(b)
              return a-b;
          }
    

你可能感兴趣的:(js数组)