JS数组方法总结与部分方法原生实现

函数名称是否会改变自身参数说明解释返回值
Array.from()false类数组对象一个类似数组或可迭代对象中创建一个新的数组实例数组实例
Array.isArray()false需要检测的元素判断一个元素是否为数组布尔值
Array.isArray()false元素,可多个创建一个具有可变数量参数的新数组实例数组实例
fill()truevalue,开始索引,结束索引将数组中指定区间的所有元素的值,都替换成value
push()true需要插入的值(可多个)栈方法,添加一个或多个元素到数组的末尾数组长度
pop()true栈方法,删除一个数组中的最后一个元素被删除的元素
shift()true队列方法,删除数组的第一个元素,并返回这个元素被删除的元素
unshift()true需要插入的值(可多个)队列方法,在数组的开头插入一个或多个元素数组长度
reverse()true前后颠倒数组中元素的位置,第一个元素会成为最后一个操作后的数组
sort()true空/比较函数对数组的元素做原地的排序,并返回这个数组。sort可能不稳定,默认按照字符串的unicode码位点排序操作后的数组
splice()true(开始索引,需要删除的数量,…需要插入的值,可多个)在任意的位置给数组添加或删除任意个元素(拼接)被删除的值(数组形式),无则为空数组
copyWithin()true(开始索引,替代数组开始的索引/空[默认为0],替代数组结束的索引/空[默认为数组长度])用于在数组内的替换操作,即替换元素和被替换元素都是数组内的元素操作后的数组
concat()false需要拼接的数组(可多个)用于合并两个或多个数组操作后的数组
includes()false(值,索引)用来判断当前数组是否包含某指定的值布尔值
indexOf()false(值,索引)返回在数组中可以找到一个给定元素的第一个索引索引
lastIndexOf()false(值,索引)返回在数组中可以找到一个给定元素的最后一个索引,会从数组的后面向前查找索引
join()false(连接符)将一个数组(或一个类数组对象)的所有元素连接成一个字符串连接后的字符串
slice()false(开始索引,需要删除的数量,…需要插入的值,可多个)在任意的位置给数组添加或删除任意个元素(拼接)按逻辑增删后的数组(不改变原数组
toString()false使数组变成字符串,用’,’连接。若数组的值存在数组,会便遍历拼接在字符串里;对象,会变成[object Object];undefined则什么都不连接,即会变成,,字符串
toLocalString()false使数组变成字符串,用’,’连接。数组内的元素会调用自己的toLocalString方法字符串
forEach()false(item/值,index/索引,array/原数组) => {}forEach遍历的范围在第一次调用 callback前就会确定。调用forEach后添加到数组中的项不会被 callback访问到。如果已经存在的值被改变,则传递给 callback的值是 forEach遍历到他们那一刻的值。已删除的项不会被遍历到。
map()false(item/值,index/索引,array/原数组) => {}一个由原数组中的每个元素调用一个指定方法后的返回值组成的新数组返回值构成的新数组
keys()false返回一个新的Array迭代器,它包含数组中每个索引的键Array迭代器
values()false返回一个新的Array迭代器,它包含数组中每个值的键Array迭代器
entries()false返回一个新的Array迭代器,它包含数组中每个键值对[index, item]Array迭代器
every()falsecallback(v, i, a){}若数组的值执行callback全部返回true,则最终返回true布尔值
some()falsecallback(v, i, a){}若数组的值执行callback有一个返回true,则最终返回true布尔值
filter()falsecallback(v, i, a){}使用指定的函数测试所有元素,并创建一个包含所有测试通过的元素的新数组使callback返回true的值组成的数组
find()false(callback(v, i, a){}, v/callback执行的作用域)返回数组中满足提供的测试函数的第一个元素的值。否则返回 undefined。通过测试的第一个元素值或undefined
findIndex()false(callback(v, i, a){}, v/callback执行的作用域)返回数组中满足提供的测试函数的第一个元素的值的索引。否则返回 undefined。通过测试的第一个元素值的索引或undefined
reduce()false((p/上一次回调的返回值, v/当前被处理的元素, i/索引 , a/原数组) => {}, initialValue初始值)该方法接收一个函数作为累加器(accumulator),数组中的每个值(从左到右)开始合并,最终为一个值最后的返回值
reduceRight()false((p/上一次回调的返回值, v/当前被处理的元素, i/索引 , a/原数组) => {}, initialValue初始值)该方法接收一个函数作为累加器(accumulator),数组中的每个值(从右到左)开始合并,最终为一个值最后的返回值
  • 1
    点赞
  • 0
    收藏
    觉得还不错? 一键收藏
  • 0
    评论

“相关推荐”对你有帮助么?

  • 非常没帮助
  • 没帮助
  • 一般
  • 有帮助
  • 非常有帮助
提交
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值