1.添加数组新元素
在javascript中,它的数组可以具有任意个数的元素,可以在任何时刻改变元素的个数。
要给一个数组添加新元素,只需要给它赋一个值即可。
在javascript中数组是稀疏(sparse)的。这意味着数组的下表不必须落在一个连续的数字范围内,只有那些真正存储在数组中的元素才能够由javascript实现分配到内存。
2.删除数组元素
delete运算符把一个数组元素设置为undefined值,但是元素本身还继续存在。要真正地删除一个元素,一室下标位置高于它的所有元素都向下迁移到较低的下标位置,那么必须使用一个数组方法。
Array.shift(),Array.pop(),Array.splice()等。
3.数组的长度
所有数组都有一个特殊的属性length,用来说明这个数组包含的元素个数。更精确的说,由于数组可能含有未定义的元素,所以属性length总是比数组的最大元素的数多1。数组的length属性是自动更新的,以便在给数组添加新元素是保持一致性。
4.遍历数组
for循环
5.截断或增长数组
数组的length属性可读可写。如果给length设置了一个比它的当前值小的值,那么数组就会被截断,这个长度之外的元素就会被抛弃。如果给length设的值比当前的大,那么新的、未定义的元素就会被添加到数组末尾,以使得数组增长到新指定的长度。
6.多维数组
虽然javascript并不支持真正的多维数组,但是它允许使元素为数组的数组,这就非常接近多维数组。要存取一个数组的数组中的元素,只需两次[]运算符即可。
数组方法
1.join()
可以把一个数组的所有远足转换成字符串,然后再把它们连接起来。可以指定一个可选的字符串来分隔结果字符串中的元素。如果没有,默认为英文逗号。
2.reverse()
将数组中的元素颠倒顺序,返回逆序数组(在原先数组中重新排列它们)。
3.sort()
将数组元素排序,并返回排序后数组。
不带参数调用sort()时,数组元素以字母表元素进行排列。元素如果包含undefined,将排在数组的尾部。
为了按照其他方式而非字母表顺序,需要给sort()方法传递一个比较函数。该函数决定两个参数在排好序的数组中的先后顺序。假设第一个参数应该在前,比较函数应该返回一个小于0的数,反之,返回一个大于0的数,如果两个数相等,比较函数应该返回0.
4.concat()
Array.concat()方法创建并返回一个新数组,这个数组包含了调用concat()的原数组的元素和concat的参数。如果参数是数组,那么它将被展开,注意,它不能递归地展开扁平化的数组的数组。
5.slice()
返回数组的一个片段(子数组)。它的两个参数指定了子数组的起止点,但是,并不包含第二个参数的元素。如果只有一个参数,那么返回从开始位置到数组结束的子数组。如果参数出现负数,则表示相对于数组最后一个元素的位置。
6.splice()
是插入和删除数组元素的通用方法,在原数组上修改数组。
splice()可以把元素从数组中删除,也可以匠心元素插入到数组中,或是同时执行这两种操作。位于被插入了或是删除了的元素之后的元素会进行必要的移动,以保持数组元素的连续性。
splice()第一个参数指定了要插入或删除的元素的位置。第二个参数指定了要从数组中删除的元素的个数,如果第二个参数被省略,则将删除从开始元素到数组结束的所有元素。
splice()前两个参数指定要删除的元素,紧随其后的任意个参数指定了需要插入到数组中的元素,从第一个参数指定的位置进行插入。
注意,区别于concat(),splice()会插入数组本身而非数组的元素。
7.pop()和push()
pop()和push()方法允许将数组当作栈来使用。push()方法在数组尾部添加元素并返回数组长度。pop()方法删除数组的最后一个元素,减小数组的长度并返回它删除的元素值。
注意,两个方法修改并替换原始数组。
8.unshift()和shift()
unshift()和shift()方法非常类似与pop()和push(),不一样的是前传在数组头部进行操作。
unshift()在数组头部添加一个或多个元素,并将已存在的元素移动到更高索引位置来获得足够的空间,最后返回数组新的长度。
shift()删除数组第一个元素并将其返回,然后把所有随后的元素下移一个位置来填补空缺。
9.toString()和toLocaleString()
将每个元素转化为字符串并用逗号间隔输出。这与不加参数的join()方法返回的字符串是一样的。