您的位置:首页 > Web前端 > JavaScript

JavaScript之数组

2016-04-12 19:51 495 查看

一维数组

内存中的数组:

1.引用类型的对象

2.每个值相当于一个元素

3.每个都有一个下标

数组对象的个数:

1.数组是从0开始计数的,即arr[0]是arr数组中的第一个元素。

2.arr.length,永远等于最大一个下标+1

使用数组中的元素:

数组名[i];

创建

1.创建空数组

var 数组名 =[];//js中见到[]就是数组

var arr = [];


2.创建数组的同时,初始化每个元素

var 数组名 = [值1,值2,值3,…];

var arr = [1,2,3,4];


3. 通过创建新对象,创建空数组

var 数组名 = new Array(n);

var arr = new Array(n);


new:创建一个新对象

Array:数组类型

n:表示初始化元素的个数,省略则创建控数组

4.通过创建新对象,创建数组的同时,初始化每个对象

var 数组名 = new Array(值1,值2,值3,…);

var arr = new Array("hello","world");


赋值

数组名[i] = 值;

arr[1] = 2;


1.不限制个数,js中没有数组越界的说法;如果赋值多,自动增加length.

2.不限制元素的类型。

取值

var arr = [1,2,3,4];
console.log(arr[1]+arr[3]);//6


任何位置使用 数组名[i] ,等效于直接使用 数组名[i] 中的值。

注: 如果给数组中的元素赋值为null,主动释放一个对象。

arr[2] = null;


null:主动释放一个对象,虽然在js中有垃圾回收器,但是建议用完较打的对象后,主动释放。

遍历一维数组

//arr是一个一维数组
for(var i=0;i<arr.length;i++){
//进行操作的代码
}


二维数组

数组的元素有引用了另一个子数组。

创建(两步)

(1)创建一个空数组

(2)设置数组中每个元素再引用另一个子数组。

var data = [];
data[0] = [1,2,3,4];


访问

访问二维数组中的任意位置元素

data[r][c];
/*data表示一个二维数组,r表示行,c表示列;即取data数组中r行c列的元素。*/


遍历二维数组

//data是一个二维数组
for(var r=0;r<data.length;r++){
for(var c=0;c<data.length;c++){
//进行操作的代码
//当前元素:data[r][c];
}
}


关联(hash)数组

可自定义下标的数组。

创建

(1)先创建空数组,

(2)再向数组中添加元素。

var arr = [];
arr[key] = value;


key:必须是字符串;

hash数组的length属性无效,即无法使用arr.length来获取数组的长度。

使用

arr[key];


关联数组中的key不能重复。

所有数组如果访问不存在下标的位置,不会报错,会返回undefined.

关联数组的有点:快速精确查找不需要遍历和数据量无关

遍历hash数组

for(var key in hashArr){//反复取出每个元素放入变量key中
//执行操作的代码
//key中获取的仅是元素的下标名称
//当前元素:hashArr[key];
}


建议:

1.只要遍历索引数组(一维/二维数组都属于索引数组),就用for循环;

2.只要遍历关联(hash)数组,只能用for in循环。
内容来自用户分享和网络整理,不保证内容的准确性,如有侵权内容,可联系管理员处理 点击这里给我发消息
标签:  javascript 数组