es4数组方法
数组方法 | 版本 | 功能 | 是否改变原数组 | 参数 |
---|---|---|---|---|
pop() | ES4 | 删除最后一位,并返回删除的数据 | 是 | 无 |
push() | ES4 | 在最后一位新增一或多个数据,返回长度 | 是 | push(newData1, newData2, …) |
shift() | ES4 | 删除第一位,并返回删除的数据 | 是 | 无 |
unshift() | ES4 | 在开头新增一或多个数据,返回长度 | 是 | unshift(newData1, newData2, …) |
reverse() | ES4 | 反转数组,返回结果 | 是 | 无 |
sort() | ES4 | 排序(字符规则,返回结果 | 无 | |
splice() | ES4 | 删除指定位置,并替换,返回删除的数据 | 是 | splice(start,num,data1,data2,…) |
toString() | ES4 | 直接转为字符串,并返回 | 否 | 无 |
concat() | ES4 | 合并数组,并返回合并之后的数据 | 否 | concat(data1,data2,…); |
join() | ES4 | 使用分隔符,将数组转为字符串并返回 | 否 | join(str); |
slice() | ES4 | 截取指定位置的数组,并返回 | 否 | slice(start, end) |
1。splice可传参数解释
start:整数,规定添加/删除项目位置的索引,使用负数可从数组结尾处规定删除的位置
num:整数,规定要删除元素的数量,若为0则不会删除
data1,data2,data3…:可选,规定需要添加的元素
2。concat可传参数解释
data:为数组时,将data合并到原数组;data为具体数据时直接添加到原数组尾部;省略时创建原数组的副本
3。join可传参数解释
str:默认为","号,以传入的字符作为分隔符
4。slice可传参数解释
start:为必填,表示从第几位索引开始。若为负数,则表示从后往前计算索引
end:为可填,表示到第几位结束(不包含end位),省略表示到最后一位;若为负数,则表示从后往前计算索引
es5数组新增方法
数组方法 | 版本 | 功能 | 是否改变原数组 | 参数 |
---|---|---|---|---|
valueOf() | ES5- | 返回数组的原始值(一般情况下其实就是数组自身),一般由js在后台调用,并不显式的出现在代码中 | 否 | 无 |
indexOf() | ES5- | 根据指定的数据,从左向右,查询某元素在数组中出现的位置,如果不存在指定的元素,返回-1。该方法是查询方法,不会对数组产生改变。 | 否 | indexOf(value, start); |
lastIndexOf() | ES5- | 根据指定的数据,从右向左,查询在数组中出现的位置,如果不存在指定的数据,返回-1。该方法是查询方法,不会对数组产生改变。 | 否 | lastIndexOf(value, start); |
indexOf()可传参数解释
value:必填,要查询的数据;
start:选填,表示开始查询的位置,当start为负数时,从数组的尾部向前数;如果查询不到value的存在,则方法返回-1
lastIndexOf()可传参数详解
value:必填,要查询的数据;
start:选填,表示开始查询的位置,当start为负数时,从数组的头部向尾部数;如果查询不到value的存在,则方法返回-1
es6新增方法
数组方法 | 版本 | 功能 | 是否改变原数组 | 参数 |
---|---|---|---|---|
copyWithin() | ES6- | 在当前数组内部,将指定位置的成员复制到其他位置顶替掉原来位置的元素,并返回新数组 | 是 | copyWithin(target,start=0,end=this.length) |
fill() | ES6- | 使用给定的值,填充到数组中,类似于替换 | 是 | fill(data,start,end) |
forEach() | ES6- | 用来遍历数组,该方法没有返回值。forEach接收的回调函数会根据数组的每一项执行,该回调函数默认有三个参数,分别为:遍历到的数组的数据,对应的索引,数组自身。 | 否 | forEach(callback);callback默认有三个参数,分别为value,index,self。 |
map() | ES6- | 1.同forEach功能;2.map的回调函数会将执行结果返回,最后map将所有回调函数的返回值组成新数组返回。 | 否 | map()接收一个回调函数作为参数,这个回调函数需要有返回值;map(callback);callback默认有三个参数,分别为value,index,self。 |
filter() | ES6- | 1.同forEach功能;2.filter的回调函数需要返回布尔值,当为true时,将本次数组的数据返回给filter,最后filter将所有回调函数的返回值组成新数组返回(此功能可理解为“过滤”)。 | 否 | filter()接收一个回调函数作为参数,这个回调函数需要有返回值;filter(callback);callback默认有三个参数,分别为value,index,self |
every() | ES6- | 同forEach,同时回调函数返回布尔值,全部为true,由every返回true | 否 | every()接收一个回调函数作为参数,这个回调函数需要有返回值;every(callback);callback默认有三个参数,分别为value,index,self |
some() | ES6- | 判断数组中是否存在满足条件的项,只要有一项满足条件,就会返回true。 | 否 | some()接收一个回调函数作为参数,这个回调函数需要有返回值,some(callback);callback默认有三个参数,分别为value,index,self |
reduce() | ES6- | 从数组的第一项开始,逐个遍历到最后,迭代数组的所有项,然后构建一个最终返回的值。 | 否 | 看下面介绍 |
reduceRight() | ES6- | 从数组的第一项开始,逐个遍历到最后,迭代数组的所有项,然后构建一个最终返回的值。 | 否 | 看下面介绍 |
from() | ES6- | 将类数组对象和可遍历对象转化为数组 | 否 | from(object, mapFunction, thisValue) |
of() | ES6- | 将一组值转化为数组 | 否 | of(element0[, element1[, …[, elementN]]]) elementN:任意个参数,将按顺序成为返回数组中的元素 |
find() | ES6- | 在数组内部, 找到第一个符合条件的数组成员,返回值 | 否 | find(callback[, thisArg]);callback回调函数接受三个参数(element,index,self) |
findIndex() | ES6- | 在数组内部, 找到第一个符合条件的数组成员,返回索引 | 否 | arr.findIndex(callback[, thisArg]);callback回调函数接受三个参数(element,index,self) |
copyWithin()可传参数详解
target:从该索引位置开始替换元素,如果为负值,则表示从右往左
start:从该索引位置开始读取元素(包括该索引对应的元素)。默认为0,如果为负值,则表示从右往左
end:到该索引位置前停止读取元素(不包括该索引对应的元素)。默认等于数组长度,使用负数可从数组结尾处规定位置开始
Tip:数组的长度前后不会改变
fill()可传参数详解
data:要填充数组的值
start:填充开始的位置,默认值是0
end:填充结束的位置,默认值是this.length(数组长度)
foEach可传参数详解
value:遍历到的数组元素
index:元素对应的索引
self:数组自身
map可传参数详解
value:遍历到的数组元素
index:元素对应的索引
self:数组自身
filter可传参数详解
value:遍历到的数组元素
index:元素对应的索引
self:数组自身
every可传参数详解
value:遍历到的数组元素
index:元素对应的索引
self:数组自身
some可传参数详解
value:遍历到的数组元素
index:元素对应的索引
self:数组自身
reduce可传参数详解
reduce()接收一个或两个参数:第一个是回调函数,表示在数组的每一项上调用的函数;第二个参数(可选的)作为归并的初始值,被回调函数第一次执行时的第一个参数接收。
reduce(callback,initial);callback默认有四个参数,分别为prev,now,index,self
callback返回的任何值都会作为下一次执行的第一个参数。
如果initial参数被省略,那么第一次迭代发生在数组的第二项上,因此callback的第一个参数是数组的第一项,第二个参数就是数组的第二项。
prev:初始值, 或者计算结束后的返回值
now:当前元素值
index:当前元素的索引
self:数组自身
reduceRight()可传参数详解
reduce()接收一个或两个参数:第一个是回调函数,表示在数组的每一项上调用的函数;第二个参数(可选的)作为归并的初始值,被回调函数第一次执行时的第一个参数接收。
reduce(callback,initial);callback默认有四个参数,分别为prev,now,index,self
callback返回的任何值都会作为下一次执行的第一个参数。
如果initial参数被省略,那么第一次迭代发生在数组的第二项上,因此callback的第一个参数是数组的第一项,第二个参数就是数组的第二项。
prev:初始值, 或者计算结束后的返回值
now:当前元素值
index:当前元素的索引
self:数组自身
from可传参数介绍
object:必需,要转换为数组的对象
mapFunction:可选,数组中每个元素要调用的函数
thisValue:可选,映射函数(mapFunction)中的 this 对象
find可传参数介绍
element:可选;当前遍历到的元素
index:可选:当前遍历到的索引
self:可选:数组本身
thisArg:执行回调时用作 this 的对象
findindex可传参数介绍
element:可选;当前遍历到的元素
index:可选:当前遍历到的索引
self:可选:数组本身
thisArg:执行回调时用作this 的对象