第七章:Javascript数组
数组是值的有序结合。每个值叫做一个元素,而每个元素在数组中都有一个位置,用数字表示,称为索引。 javascript数组是无类型的:数组的元素可以是任意类型,并且同一个数组中的不同元素也可能有不同的类型。数组的元素可能是对象或其他数组,这允许创建更加复杂的数据结构,如对象的数组和数组的数组。 javascript数组的索引是基本零的32位数值:第一个元素的索引为0,最大的索引为4 294 967 294(2的32次方-2),数组最大能容纳4 294 967 295个元素。 javascript数组是动态的:根据需要他们会增长或缩减,并且在创建数组时无需声明一个固定大小或者在数组大小变化时无需从新分配空间,javascript数组可能是稀疏的:数组元素的索引不一定要连续的,该属性就是数组元素的个数。征对稀疏数组,length比所有元素的索引要大。 javascript数组是javascript对象的特殊形式,数组索引实际上和碰巧是整数的属性名差不多。我们将在本文(章)更多讨论特殊化的数组。通常数组的实现是经过优化的,用数组索引来访问数组元素一般来说比访问常规的对象属性要快很多。 数组继承自Array.prototype的属性,它定义了一套丰富的数组操作方法,8和9节涵盖这方面的内容。大多这些方法是通用的,这意味着他们不仅对正真的数组有效,而且对“类数组对象”同样有效