数组的方法挺多,之前面试也遇到询问数组方法的,现在小小的总结一下。
1、添加元素
push,添加到数组末尾
unshift, 添加到数组开头
2、删除元素
pop,删除数组末尾元素
shift,删除数组开头元素
3、在任意位置添加或者删除元素
splice 方法中的参数代表索引 删除个数 之后的参数代表要添加到数组中的元素
4、其他javascript数组方法
concat 连接一个或者多个数组
every 校验每一个元素是否符合设置的逻辑,是返回true,否返回false
filter 过滤数组中符合设置逻辑的元素
forEach 迭代数组中的每一个元素,无返回值
join 把数组按照设置的连接符号转换成字符串
indexOf 返回第一个符合设置逻辑的元素索引,没有找到为-1
lastIndexOf 返回最后一个符合设置逻辑的元素索引
map 对数组每个元素运行设置逻辑,会返回逻辑实现后的数组
reverse 数组倒序
slice 返回数组指定两个索引之间的元素,不包括最后一个索引对应的元素
some 校验数组中是否存在符合设置逻辑的元素,有一个符合逻辑返回true,否则返回false
sort 按照设置的逻辑进行数组排序,没有写逻辑就是字母顺序排列
toString 数组变成字符串输出
valueOf 数组作为字符串返回
5、数组的迭代方法
every、some、map、filter、forEach、reduce
其中reduce可以包括四个参数,previousValue,currentValue, index, array
前两个必填,表示原先值,现在值,后两个用不到可以不填,表示索引和原来数组。
6、ES6中数组的新功能方法
@@iterator 返回一个包括数组键值对的迭代器对象,通过Symbol.iterator来访问
copyWithin 复制数组中对应索引位置的元素
entries 返回包括数组所有键值对的@@iterator
includes 数组是否存在某个元素,存在返回true,不存在返回false
find 返回符合设置逻辑的数组元素,如果没有,返回undefined
findIndex 返回数组元素符合设置逻辑的元素的索引,如果没有,返回-1
fill 用固定的值填充数组,可以指定开始填充和结束填充的索引
from 根据已有数组创建一个新的数组
keys 返回数组的键
of 根据传入参数创建一个新数组
values 返回数组的值