javascript笔记整理(数组)

数组是一个可以存储一组或是一系列相关数据的容器

一、为什么要使用数组。

a.为了解决大量相关数据的存储和使用的问题。

b.模拟真是的世界。

二、如何创建数组

A.通过对象的方式来创建——var a=new Array();

赋值方式:

1.直接赋值——var a=new Array(元素1,元素2,元素3,元素4,........)

var a=new Array(数值)
如果只有一个元素,并且这个元素是数值类型的,那么他就是指定数组的长度并且他的值都是undefined

var a=new Array(3);
alert(a.length);    结果:3

var a=new Array(3,2);
alert(a.length);    结果:2

 2.声明以后再赋值

var a=new Array();
a[0]=1;
a[2]=2;  
a[0]=3;

 

 B.隐形声明的方式——var a=[];

赋值方式:

1.直接赋值:     

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

 

2.声明以后再赋值

var a=[];
a[0]=1;
a[1]=2;  
a[2]=3;

 

 

 

javascript数组可以存储任何类型的值
var a=new Array(3,true,'abc'); 

三、访问数组的元素(通过数组的(中括号)下标访问)

数组下标从0开始,他的最大值,是length属性-1

四、遍历数组的元素

//for循环 效率最优
var a=[1,2,3];
for(var i=0,max=a.length;i<max;i++){
    alert(a[i]);
}

//while();
var i=0;
while(i<a.length){
    alert(a[i]);
    i++;
}

//for in(只能从第一个开始有几个数组执行几次) 效率慢
for(var i in a){
    alert(a[i]);
}

 

五、数组的分类

A.下标的类型

1.下标是数字类型的(索引数组)

var a=[];
a[0]=1;
a[1]=2;
a[2]=3; 

 

2.下标是字符串类型的(关联数组)

 

var a=[];
a['name']=2;
alert(a.name);        弹出:2
alert(a[''name']);    弹出:2
alert(a);                弹出:空

 

 

B.维度来分类

A.一维数组

var a=[1,2,3];

 

 

B.二维数组

var arr=[[1,2,3],[4,5,6]];
alert(arr[1][1])

 

 

 

注意:

//可以存储任何类型的数据
var a=[1,'name',true,'abc'];

//只支持一维数组。
var a=[];
a[0][0]=2
alert(a[0][0]);        报错

var a=[[]];
a[0][0]=2
alert(a[0][0]);        弹出:2

//长度可变。
var a=[1,2];
alert(a.length);     结果:2
a[4]=2;
alert(a.length);     结果:5

//如果是索引数组,下标始终从0开始,如果指定了长度,但是没有赋值,他的值就会自动赋值为undefined
var a=[];
a[3]=2;
alert(a[2]);        结果:undefined
alert(a.length);           结果:4

 

你可能感兴趣的:(javascript笔记整理(数组))