JavaScript-函数组合
2021/8/6 1:38:36
本文主要是介绍JavaScript-函数组合,对大家解决编程问题具有一定的参考价值,需要的程序猿们随着小编来一起学习吧!
- 纯函数和柯里化容易引起洋葱代码
- 函数组合可以让我们把细粒度的函数重新组合生成一个新的函数
- 函数组合并没有减少洋葱代码,只是封装了洋葱代码
- 函数组合执行顺序从右到左
- 满足结合律既可以把g和h组合 还可以把f和g组合,结果都是一样的
const _ = require("lodash"); const reverse = arr => arr.reverse() const first = arr => arr[0] const toUpper = s => s.toUpperCase() const lastToupper = _.flowRight(toUpper, first, reverse) console.log(lastToupper(['one', 'two', 'three'])) // 模拟 lodash 中的 flowRight function compose (...args) { return function (value) { return args.reverse().reduce(function (acc, fn) { console.log(fn) return fn(acc) }, value) } } const composeEs6 = (...args) => value => args.reverse().reduce((acc, fn) => fn(acc), value) const f = composeEs6(toUpper, first, reverse) console.log(f(['one', 'two', 'three'])) //结合律
原文地址: https://kspf.xyz/archives/71
这篇关于JavaScript-函数组合的文章就介绍到这儿,希望我们推荐的文章对大家有所帮助,也希望大家多多支持为之网!
- 2025-01-10百万架构师第十三课:源码分析:Spring 源码分析:Spring核心IOC容器及依赖注入原理|JavaGuide
- 2025-01-10便捷好用的电商API工具合集
- 2025-01-09必试!帮 J 人团队解决物流错发漏发的软件神器!
- 2025-01-09不容小觑!助力 J 人物流客服安抚情绪的软件!
- 2025-01-09为什么医疗团队协作离不开智能文档工具?
- 2025-01-09惊叹:J 人团队用啥软件让物流服务快又准?
- 2025-01-09如何利用数据分析工具优化项目资源分配?4种工具推荐
- 2025-01-09多学科协作难?这款文档工具可以帮你省心省力
- 2025-01-09团队中的技术项目经理TPM:工作内容与资源优化策略
- 2025-01-09JIT生产管理法:优化流程,提升竞争力的秘诀