JavaScript数组的使用
数组是我们最常用的数据结构,很多基于数组的操作大家也足够熟悉了,我们不会在这里罗列数组的API,因为MDN数组这一部分足够权威也足够全面,我们会简单介绍下重点的数组方法,为接下来的内容做铺垫。
JavaScript数组的创建与初始化
如果你之前学过其它语言类似于c++/java等,你可能会用一下方法创建并初始化一个数组:
constappleMac=newArray('MacBookAir','iMac','MacBookPro','Macpro')
当然这在JavaScript中是可以的,但并不主流方法,通常人们创建并初始化数组用的是字面量的方式:
constappleMac=['MacBookAir','iMac','MacBookPro','Macpro']
在es6中引入了两个新方法,同样可以创建数组:
Array.of()返回由所有参数组成的数组,不考虑参数的数量或类型,如果没有参数就返回一个空数组
Array.from()从一个类数组或可迭代对象中创建一个新的数组
这两个方法分别解决了两个问题,Array.of()解决了构造函数方法创建数组时单个数字引起了怪异行为。
consta=newArray(3);//(3)[empty×3]构造函数方法单个数组会被用于数组长度
constb=Array.of(3);//[3]
Array.from()解决了『类数组』的转化问题,之前我们将类数组转化为数组的方法普遍用的是Array.prototype.slice.call(arguments)这种偏Hack的方法,Array.from()的出现将其规范化,在以后的转化中我们最好按照标准的Array.from()方法进行转化。