首先,我们来说一下数组的定义。数组就是在堆中开辟的一串连续的内存空间,并将堆地址存在栈中。

在java 中,数组的定义为一组相同类型的变量的集合。而在js中,一个数组可以存放任意类型的数据。

创建数组有两种类型方式:

1. 使用new字段

        通过 new 实例化一个数组,又分为3种方式:

var arr = new Array();//实例化一个空数组,在内存中只占一个空间
         var arr = new Array(3);//实例化一个空数组,数组在内存中占用3个连续的空间
        var arr= new Array(‘n’,’b’,’o’);//实例化一个数组,数组在内存中占用3个连续的空间,并赋值。

 

2. 通过字面量

        通过字面量[],又分为2中方式:

var arr = [];
        var arr =[‘j’,’h’,’g’];

 

在js中,数组的长度是可变的,可以通过以下几个步骤进行扩充

1. 通过数组下标进行扩充


        例如

var arr=[1,2,3]; 

                arr[6]=8;


        则数组的长度便被扩充至

7, 下标为 3,4,5 的数组值为空。我们 alert 出数组 arr ,显示为 1,2,3, , , ,8


2. 通过数组长度进行扩充


        我们知道数组的长度属性是从

1 开始,比数组下标值多 1 。数组下标加 1 则长度也会跟着加 1 ,所以,数组扩充的下标就等于数组的长度值。


        例如

var arr=[1,2,3]; 

     
              
 arr.length=3; 

     
     
          arr[arr.length]=4; 

     
               
alert(arr);



        我们可以看到输出的数组值为

1,2,3,4 

3.


通过数组的 length 属性进行扩充


        在js 中, length 属性具有可读可写性,我们可以定义数组 length 的值来扩从数组长度。


        例如:

var arr = [1,2,3]; 

                    arr.length=5; 

                    alert(arr);


        我们可以看到

arr 的值为 1,2,3, , , 数组被新增了两个空间。


 


遍历数组并输出的方法


1. 

使用 for 循环


        例

for(var i = 0; i<arr.length;i++){ 

     
     
            alert(arr[i]); 

     
            }


2. 

使用 for in


          例  

for( var i in arr){ 

     
             
    alert(arr[i]); 

     
             
}


3. 使用数组名,显示整个数组


 

          例  alert(arr);


删除数组元素


        使用函数

.splice(index,howmany);


 


在数组的头部活和尾部插入元素


        使用函数

        在数组的头部和尾部删除元素

unshift()(头部) 
和 
push();(尾部)


        使用函数

shift()  
(头部) 
和 
pop(); 
(尾部)



 



js 中 typeof() 判断基础数据类型 , 如果用来检测数组,则显示的数据类型为 Object;


InstanceOf

用来检测复杂数据类型的实力,布尔类型


instanceOf

用来判断某个对象是否属于某种数据类型。


例如:

var arrtype =arr instanceOf Array;