使用 reduce 实现数组 map 方法
2024-08-24 07:16:33
//使用 reduce 实现数组 map 方法
const selfMap2 = function (fn, context){
let arr = Array.prototype.slice.call(this)
// 这种实现方法和循环的实现方法有异曲同工之妙,利用reduce contact起数组中每一项
// 不过这种有个弊端,会跳过稀疏数组中为空的项
return arr.reduce((pre, cur, index) => {
return [...pre, fn.call(context, cur, index, this)]
}, [])
} Array.prototype.selfMap = selfMap2
var arr1 = [1, 2, 3]
arr1.length = 5 let arrMap = arr1.selfMap(function (x) {
return x * 2
})
// [2, 4, 6]
最新文章
- SCI英文论文写作- Latex 进阶
- 【PHP面向对象(OOP)编程入门教程】17.克隆对象__clone()方法
- 《构建高性能web站点》随笔 无处不在的性能问题
- boost源码剖析----boost::any
- e.KeyChar用到的键盘对应ASCII码值(转)
- LinearLayout练习
- 多目标遗传算法 ------ NSGA-II (部分源码解析) 二进制编码的个体解码操作 decode.c
- javascript——函数内部属性
- 【Android】实现动态显示隐藏密码输入框的内容
- win7 下使用cygwin
- Android 开源优秀的项目
- UNIX网络编程——ICMP报文分析:端口不可达
- 团队项目第二阶段个人进展——Day4
- 象棋start
- C++实现--最大公因数和最小公倍数
- 关于kafka重新消费数据问题
- java中的字符、字符串及数字之间的转换(转)
- SpringMVC @RequestParam和@RequestBody的区别
- unity3d抛物线的脚本
- easyui---基础组件:dialog