Javascript数组原型提供的方法非常之多,主要分为三种:
直接修改原数组
原数组不变,返回新数组
数组遍历方法
直接修改原数组的API
pop()
删除一个数组中的最后的一个元素,并且返回这个元素
push()
添加一个或者多个元素到数组末尾,并且返回数组新的长度
shift()
删除数组的第一个元素,并返回这个元素
unshift()
在数组开始处插入一些元素,并返回数组新的长度
splice()
从数组中添加/删除一些元素,然后返回被删除的元素
reverse()
颠倒数组中元素的顺序
sort()
用于对数组的元素进行排序
fill()--ES6新增
将数组指定区间内的元素替换为某个值
copyWithin()-- ES6新增
数组内元素之间的替换
返回新数组的API
contact()
将传入的数组或者元素与原数组合并,组成一个新的数组并返回
slice()
连接两个或多个数组
join()
将数组中的所有元素连接成一个字符串
indexOf()
用于查找元素在数组中第一次出现时的索引,如果没有,则返回-1
lastIndexOf()
用于查找元素在数组中最后一次出现时的索引,如果没有,则返回-1
includes() -- ES7新增
用来判断当前数组是否包含某个指定的值,如果是,则返回 true,否则返回false
toSource() -- 未入标准
返回数组的源代码,目前只有 Firefox 实现了它
数组遍历方法
forEach()
指定数组的每项元素都执行一次传入的函数,返回值为undefined
map()
遍历数组,使用传入函数处理每个元素,并返回函数的返回值组成的新数组
filter()
使用传入的函数测试所有元素,并返回所有通过测试的元素组成的新数组
every()
使用传入的函数测试所有元素,每一个元素经传入的函数处理都返回true该方法才返回true,否则返回false(验证是否每一个元素都满足测试函数)
some()
使用传入的函数测试所有元素,只要有一个元素经传入的函数处理返回true该方法就返回true,否则返回false(验证是否有元素都满足测试函数)
reduce()
接收一个方法作为累加器,数组中的每个值(从左至右) 开始合并,最终为一个值
reduceRight()
接收一个方法作为累加器,数组中的每个值(从右至左) 开始合并,最终为一个值
find() -- ES6新增
返回数组中第一个满足条件的元素(如果有的话), 如果没有,则返回 undefined
findIndex() -- ES6新增
返回数组中第一个满足条件的元素的索引(如果有的话), 如果没有,则返回 -1
keys() -- ES6新增
返回一个数组索引的迭代器
values() -- ES6新增
返回一个数组迭代器对象,该对象包含数组中每个索引的值
entries() -- ES6新增
返回一个数组迭代器对象,该对象包含数组中每个索引的键值对