JS中数组的使用

1.一维数组定义

1.1 定义方式一

var arr=new Array();

arr[0]="andy";

arr[1]="bill";

arr[2]="cindy";

 

1.2 定义方式二

var arr=new Array("andy","bill","cindy");

 

1.3 定义方式三

var arr=["andy","bill","cindy"];

 

2.二维数组定义

var arr=new Array(['a','b','c'],['d','e','f']);

arr[0]返回元素一即['a','b','c']

arr[0][0]返回元素一的第一个元素即'a'

arr[1]返回元素二即['d','e','f']

var arr=new Array( new Array('a','b','c'), new Array('d','e','f') );

 

3.数组的属性及函数

3.1 length属性

该属性用于取得数组的长度,如

var n=arr.length;

在编程中,此属性常配合for循环对数组元素进行遍历,如

    var arr=new Array( new Array('a','b','c'), new Array('d','e','f') );

    for(var i=0;i<arr.length;i++){
        alert(arr[i]);
    }

也可以采用如下遍历方式:

    var arr=new Array( new Array('a','b','c'), new Array('d','e','f') );

    for(var i=0,n=arr.length;i<n;i++){
        alert(arr[i]);
    }

 

4.在数组末尾添加或删除元素的函数

4.1 push

该函数能向数组末尾增加一个或多个元素,其返回值为增加元素后数组的长度,如

    var arr=new Array(1,2,3,4 );    
    var n=arr.push(5,6);

执行后,arr变成[1,2,3,4,5,6],n=6.

该函数能使数组接近链表的使用效果。

 

4.2 pop

该函数能删除数组末项,返回值为被删除元素的值,如

    var arr=new Array(1,2,3,4 );    
    var n=arr.pop();

执行后,arr变成[1,2,3],n=4.

 

5.对数组开头添加或删除元素的函数

5.1 unshift

该函数能将一个或多个函数添加到数组开头,并返回改变后的数组长度

    var arr=new Array(1,2,3,4 );    
    var n=arr.unshift(-1,0);

注意:IE6下,返回值n为undifined。ff下n为6.

 

5.2 shift

删除数组首项,并返回被删除元素的值,数组为空时返回undefined

    var arr=new Array(1,2,3,4 );    
    var n=arr.shift();

 

6.与字符串相关的函数

6.1 toString

该函数能得到字符串形式的数组,如:

   var arr=new Array(1,2,3');     
   var str=arr.toString();

变量str将等于字符串形式的1,2,3,分隔符为逗号.

 

6.2 join

得到字符串形式的数组,但分隔符为函数的参数

    var arr=new Array(1,2,3);        
    var str=arr.join('-');

变量str将等于字符串形式的1-2-3,分隔符为“-”号.

 

6.3 数组与String的split函数

JS的内置String类有一个函数与数组有关,它能将字符串劈分成一个字符串数组,如

        var str="1,2,3,4,5,6";
        var arr=str.split(",");
        for(var i=0,n=arr.length;i<n;i++){
            alert(arr[i]);
        }

 这就有了一个快速由字符串获得数组的途径,在编程中这是个很有用的技巧。

 

7.与数组排序有关的函数

7.1 sort

该函数无参数时,默认将数组进行升序排列

    var arr=new Array(2,1,3);        
    arr.sort();

排序后,数组为[1,2,3]

也可以写入一个匿名函数作为比较规则,并让数组按此规则进行排序

    var arr=new Array(2,1,3);        
    arr.sort(function(a,b){return b-a});

排序后,数组为[3,2,1]

 

7.2 reverse

该函数可以使现有数组逆序

    var arr=new Array(2,1,3);      
    arr.reverse();

逆序后,数组为3,1,2

 

8.数组截取函数

8.1 slice

该函数以两个下标从数组中截取一段成为一个新数组

    var arr=new Array(1,2,3,4,5);        
    var arr2=arr.slice(1,3);

执行完毕后,arr2是[2,3],arr还是原来的[1,2,3,4,5]

 

8.2 splice

当以splice(start,deleteCount)的形式被调用时,原数组会从start开始删除deleteCount项,返回值是被删除项组成的新数组。如

     var arr=[1,2,3,4,5];
     var arr2=arr.splice(0,2);
     alert(arr);// [3,4,5]
     alert(arr2);// [1,2]

当以splice(start,deleteCount,value1,value2,...)的形式被调用时,原数组会从start开始删除deleteCount项,然后插入value1,value2,...,返回值是被删除项组成的新数组。如

     var arr=[1,2,3,4,5];
     var arr2=arr.splice(0,2,6,7);
     alert(arr);// [6,7,3,4,5]
     alert(arr2);// [1,2]

 

9.数组的合并

9.1 concat

cancat可以将两个数组合并成一个新数组返回,如下:

     var arr1=[1,2,3,4,5];
     var arr2=[6,7];
     var arr3=arr1.concat(arr2);
     alert(arr1);// [1,2,3,4,5]
     alert(arr2);// [6,7]
     alert(arr3);// [1,2,3,4,5,6,7]

  • 0
    点赞
  • 0
    收藏
    觉得还不错? 一键收藏
  • 0
    评论

“相关推荐”对你有帮助么?

  • 非常没帮助
  • 没帮助
  • 一般
  • 有帮助
  • 非常有帮助
提交
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值