这篇文章用于记录javascript Array的属性及方法
属性
| 属性名 | 说明 |
|---|---|
| constructor | 返回数组对象的构造函数 |
| _ proto_ | 返回数组对象构造函数的原型,可添加属性或方法 |
| length | 返回数组元素的个数 |
方法
ES5
| 方法名 | 说明 |
|---|---|
| concat() | 连接两个或多个数组,并返回结果 |
| indexOf(param) lastIndexOf(param) |
搜索数组,返回元素所在位置,不存在返回-1 |
| join(',') | 将数组转换为字符串,默认使用逗号隔开 |
| slice(start, end) | 选取数组一部分,返回新的数组 [左闭右开) |
| splice(start, delCount, elements) | 从数组添加或删除元素 |
| toString(10) toLocaleString(16) |
把数组转化为字符串,逗号隔开 |
| valueOf() | 返回数组对象的原始值 |
| reverse() | 反转数组元素顺序 |
| pop() | 删除数组最后一个元素,返回删除的元素 |
| push(param) | 向数组添加一个或多个元素,返回新数组的长度 |
| shift() | 删除数组第一个元素,返回删除的元素 |
| unshift() | 向数组开头添加一个或多个元素,返回新数组的长度 |
| every(fun) | 数组所有的元素都符合函数条件,返回true |
| some(fun) | 数组有元素符合函数条件,返回true |
| filter(fun) | 返回符合函数条件的元素数组 |
| sort(fun) | 对数组进行排序,函数可指定升降序 |
| forEach(fun) | 对数组所有元素执行回调函数 |
| map(fun) | 通过函数处理数组每个元素,返回处理后的数组 |
| reduce(fun) reduceRight(fun) |
将数组元素计算为一个值 |
| Array.isArray(obj) | 判断对象是否为数组 |
ES6
| 方法名 | 说明 |
|---|---|
| ...[1,2,3] => 1,2,3 | 扩展运算符,将数组装换为参数序列 |
| Array.from(arrayLike, mapFun, thisArg) | 通过给定的对象(有length属性)创建一个数组 |
| Array.of(elements) | 创建一个具有可变数量参数的新数组实例 |
| copyWithin(target, start, end) | 将数组从指定位置拷贝到另一个指定位置 |
| find(fun) findIndex(fun) |
返回符合函数条件的元素(索引) |
| fill(value, start, end) | 使用固定值填充数组 |
| entries() keys() values() |
从数组创建一个可迭代对象,该对象包含数组的键值对/键/值 |
ES7
| 方法名 | 说明 |
|---|---|
| includes(searchElement, fromIndex) | 判断数组是否包含指定的值 |
实验中
| 方法名 | 说明 |
|---|---|
| flat() flatMap(fun) |
将数组拉平,flatMap对数组执行map再拉平 |