数组相关属性和函数
- 相关属性
Length属性:返回数组元素的个数
需要注意的就是返回的是元素的个数,而不是最大下标。
使用此属性可以快速清空数组
使用给length属性赋值的方法来清空数组要比直接给一个空数组的效率要高。
上面所用到的快速清空数组实际上就是使用的length可以赋任意数值的特性。换句话说,length属性我们给它赋值为多少,数组的长度就变为多少
如果清空数组之后再将数组长度还原,那么里面也只是undefined
- 相关函数
concat():拼接数组,连接2个或者更多的数组。拼接之后的数组是以返回值的形式返回,原来的数组并不会改变。
与其说是拼接数组,不如说是可以拼接任何数据到数组里面。
slice():截取数组,从数组里面截取相应个数的元素出来
该函数接收2个参数
一个参数:代表的是起始位置,返回从起始位置一直到数组末尾的所有元素
和上面的concat()一样,不会改变原本的数组,而是以返回值的形式将结果返回。
两个参数:首先第一个参数还是代表起始位置,第二个参数代表结束位置。需要注意的是截取的数组会包含起始位置的元素,但是不会包含结束位置的元素。
如果传入负数,那么会在数组的长度上加上这个负数来确定起始位置和结束位置
splice():这个函数相当强大。可以实现3种功能,分别是删除元素,插入元素以及替换元素
(1)删除:可以删除任意数量的元素,只需要指定来个参数,第一个是第一项的位置,第二个参数是删除的个数
效果:需要注意的是会改变原来的数组
(2)插入:可以向数组的任意位置插入任意数量的元素。这个时候就需要提供第3个参数(起始位置,0,要插入的项目)
注意:插入的项目是插入在起始位置的前面,返回一个空数组(因为没有删除的元素)
(3)替换:替换的原理实际上就是插入元素的同时将原来的元素删除
数组可以模拟栈的行为
栈有一个特点:先进后出,后进先出(LIFO:last-in-first-out)
push()和pop()
push()向数组的末尾推入元素,返回的是新数组的长度
pop():弹出数组的最后一个元素,需要注意不可以弹出多个元素。返回值为弹出元素
字符串和数组的相互转换
因为我们的字符串有些时候也可以看做是数组。
虽然字符串可以看做像是数组,但是它并不是真的数组。
字符串转为数组:split(),可以将字符串转为数组,接收一个参数,这个参数就是分隔符,转出来的数组里面不会包含分隔符
数组转为字符串
在数组里面有一个方法(函数),叫做join(),可以将数组转为字符串。同样接收一个参数,是字符串的分隔符,默认使用逗号