7.1 创建数组

使用数组直接量。
调用构造函数Array()。
 
7.2 数组元素的读和写
使用[]操作符来访问数组中的一个元素。
数组是对象的特殊形势,属性名是数字。
数组索引仅仅是对象属性名的一种特殊类型,这意味着JavaScript数组没有“越界”错误的概念。
 
7.3 稀疏数组
length不是数组的长度了。有一些值是undefined
 
7.4 数组长度
每个数组有一个length属性,就是这个属性使其区别于常规定饿JavaScript对象。
稠密矩阵,length属性代表数组的长度,稀疏矩阵,length属性值大于元素的个数。也就是说,在数组中肯定找不到一个元素的索引值大于或者等于它的length。当设置数组的length时,数组被截断。
 
7.5数组元素的添加和删除
a=[];
a[0]="zero";
a.push("one","two");
delete a[1];
 
7.6数组遍历
for循环使用length,要处理不存在的元素和undefined元素。
for/in循环。允许以不同的顺序遍历对象的属性。
foreach()
 
7.7多维数组
数组的数组。
 
7.8数组方法
join():生成字符串
reverse():反转
sort():排序
concat():连接
slice():切片
splice():插入或删除元素的通用方法
push(),pop():数组当作栈来使用
unshift(),shift():类似于push和pop,不过是在数组头部。
toString(),toLocalString()
 
7.9ECMAScript 5中的数组方法
forEach():改动原数组
map():不改动原数组
filter():返回数组的子集
every(),some():判断元素内容,每一个和某些
reduce(),reduceRight():使用指定的函数将数组元素进行组合。
indexOf(),lastIndexOf()
 
7.10数组类型
Array.isArray()
 
7.11类数组对象
增加length形成伪数组
 
7.12作为数组的字符串