首先,我们来说一下数组的定义。数组就是在堆中开辟的一串连续的内存空间,并将堆地址存在栈中。
在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;