7天入门JavaScript,第三天

数组
  JavaScript的数组可以保存不同类型的值。
  如 :

 var array = ['string',1,true,new Object()];


  length
  数组的length可以没有预定义长度,所以不会出现下标越界,

var array = [12];
  document.writeln("length--"+array.length);
  array[array.length] = 1000;
  document.writeln(array[array.length - 1]);
  document.writeln(array.length);
  length的最大长度为2的32次方-1 》 4294967294


  删除一个元素

var array = ['s',1,true,2,3,4];
  delete array[1];       //s undefined true 2 3 4  数组本质是对象,所以可以使用delete删除元素, 但是它并没有把这个元素移除而是把这个元素的值delete掉用undefined填充
  //array.splice(1,1);   // s true 2 3 4
  for(var i=0;i<array.length;i++) {
    document.writeln(array[i]);
  }

 


  concat()

  var a1 = [1,2,3];
  var a2 = [4,5,6];

  var a3 = a1.concat(a2,[7,8,9],[0]);

  for(var i=0;i<a3.length;i++) {
    document.writeln(a3[i]);
  }
  //1 2 3 4 5 6 7 8 9 0 


  join()

a3 = a3.join(",");
  for(var i=0;i<a3.length;i++) {
    document.writeln(a3[i]);
  }
  //1 , 2 , 3 , 4 , 5 , 6 , 7 , 8 , 9 , 0

 


  sort()

var array = [8,6,'b',1,5,'c',7,'a',4];
  // array.sort();
  array.sort(
    function(a,b) {
        if(a === b) {
            return 0;
        }
        if(typeof a === typeof b) {
            return a < b ? -1 : 1;
        }
        return typeof a < typeof b ? -1 : 1;
    }
    
  );
  for(var i=0;i<array.length;i++) {
    document.writeln(array[i]);
  }

 


  splice() // 移除,替换某个元素

var array = [8,6,'b',1,5,'c',7,'a',4];
  array.splice(1,3,"xxx","yyy","zzz");1 是从哪个index 开始移除,3是移除的个数,后面的参数对应移除的替换,如果3后面的参数小于移除的个数,则只移除不替换


  slice() //拷贝元素

var array = [8,6,'b',1,5,'c',7,'a',4];
  //array.splice(1,1,"xxx","yyy","zzz");
  var temp = array.slice(3,5); // 从index3开始到index5结束 5是index不是个数
  document.writeln(temp);

 

 


  正则表达式 RegExp  

 exec();
  test();
  var reg = /^[0-9]*$/;  //JavaScript的正则表达式 用/开始/结束
  alert(reg.test(12));
  alert(reg.exec(12));

 

posted @ 2014-08-27 18:17  廖东海  阅读(158)  评论(0编辑  收藏  举报