参考资料:《JavaScript高级程序设计 第3版》 《ES6标准入门》 菜鸟 W3School
你可以点击这里查看重新排版与整理后的版本
目录
数组方法
汇总
归类 |
方法 |
描述 |
检测数组 |
isArray() |
Array.isArray(value)准确检测数组 |
转换方法 这三个是所有对象都具有的方法 |
valueOf() |
返回数组对象的原始值(一般不会显示调用);返回数组本身 |
toString() |
把数组转换为字符串,并返回结果,每一项以逗号分割。 |
|
toLocalString() |
把数组转换为本地数组,并返回结果。 |
|
栈方法 |
push() |
数组末尾添加项 |
pop() |
弹出数组末尾数据并返回该值 |
|
队列方法 |
shift() |
移除数组中第一个项并返回该项 |
unshift() |
数组前端添加项 |
|
重排序方法 |
reverse() |
反转数组顺序 |
sort() |
排序数组,默认升序 |
|
操作方法 |
concat() |
基于当前数组中的所有项创建一个新数组.这个方法会先创建当前数组一个副本,然后将接收到的参数 添加到这个副本的末尾,最后返回新构建的数组 |
slice() |
基于当前数组中的一或多个项创建一个新数组 |
|
splice() |
删除数组中的项或往数组中插入项 |
|
位置方法 |
indexOf() |
这两个方法都接收两个参数:要查找的项和(可选的)表示查找起点位置的索引 indexOf()从数组开头开始查找 lastIndexOf()从数组末尾开始向前查找 |
lastIndexOf() |
||
迭代方法 迭代方法都不会修改原数组每个方法都接收两个参数:要在每一项上运行的函数和 (可选的)运行该函数的作用域对象——影响 this 的值。传入这些方法中的函数会接收三个参数:数组项的值、该项在数组中的位置和数组对象本身。 |
every() |
对数组中的每一项运行给定函数,如果该函数对每一项都返回 true,则返回 true。 |
some() |
对数组中的每一项运行给定函数,如果该函数对任一项返回 true,则返回 true。 |
|
filter() |
对数组中的每一项运行给定函数,返回该函数会返回 true 的项组成的数组 |
|
forEach() |
对数组中的每一项运行给定函数。这个方法没有返回值。 |
|
map() |
对数组中的每一项运行给定函数,返回每次函数调用的结果组成的数组。 |
|
归并方法 |
reduce() reduceRight() |
迭代数组的所有项,然后构建一个最终返回的值 |
ES6新增 |
扩展运算符(spread) |
将一个数组转为用逗号分隔的参数序列 console.log(...[1,2,3]) //1 2 3 |
of() |
将一组值转换为数组,用于弥补构造函数Array()的不足 |
|
find() findIndex() |
找出第一个符合条件的数组成员/下标 |
|
from()
|
用于将两类对象转换为真正的数组:类似数组的对象(array-like object)和可遍历(iterable)对象 |
|
fill() |
使用给定值填充数组 [‘a’,’b’,’c’].fill(7, 1, 2) // [‘a’,’1’,’c’] |
|
includes() |
检测数组是否包含某个给定的值 |
|
其他 | join(seperator) | 把数组中的所有元素放入一个字符串。元素是通过指定的分隔符进行分隔的。seperator是可选参数,默认使用','分隔 |
细节
1.toString()和toLocalString()
toLocalString()是调用每个数组元素的 toLocaleString() 方法,然后使用地区特定的分隔符把生成的字符串连接起来,形成一个字符串。
toString()方法获取的是String(传统字符串),而toLocaleString()方法获取的是LocaleString(本地环境字符串)。
如果你开发的脚本在世界范围都有人使用,那么将对象转换成字符串时请使用toString()方法来完成。
LocaleString()会根据你机器的本地环境来返回字符串&#x