函数式编程 -- 柯里化
2021/6/11 20:21:11
本文主要是介绍函数式编程 -- 柯里化,对大家解决编程问题具有一定的参考价值,需要的程序猿们随着小编来一起学习吧!
柯里化
-
当一个函数有多个参数的时候,先传递一部分参数调用它(这部分参数以后将不会再发生变化),然后返回一个新的函数接收剩余的参数,这个函数返回结果
-
示例
// _lodash 中的curry函数 const _ = require('lodash') function getSum(a,b,c){ return a+b+c } const curried = _.curry(getSum) console.log(curried(1,2,3)) console.log(curried(1)(2,3)) console.log(curried(1,2)(3)) //上面三种写都将得到一样的结果,即6
什么时候使用柯里化函数
- 比如在程序中,需要写很多遍同一函数、不同参数、同时我们又想保持函数的纯度的情况,可以采用柯里化简化参数,比如:
function checkAge(min,age){ return age>=min } checkAge(18,20) checkAge(18,21) checkAge(18,25) checkAge(18,31) // 上面这样,检测age是否>=min,对于需要写很多遍时,可以柯里化,像下面这样: function checkAge(min){ return function(age){ return age >=min } } //比较age是否>=18可以这样写: let checkAge18=checkAge(18) //比较age是否>=20可以这样写: let checkAge20=checkAge(20) //后续比较都只需要输入一个参数age就可以了 console.log(checkAge18(21)) console.log(checkAge20(21))
这篇关于函数式编程 -- 柯里化的文章就介绍到这儿,希望我们推荐的文章对大家有所帮助,也希望大家多多支持为之网!
- 2024-07-02springboot项目无法注册到nacos-icode9专业技术文章分享
- 2024-06-26结对编程到底难不难?答案在这里
- 2024-06-19《2023版Java工程师》课程升级公告
- 2024-06-15matplotlib作图不显示3D图,怎么办?
- 2024-06-1503-Loki 日志监控
- 2024-06-1504-让LLM理解知识 -Prompt
- 2024-06-05做软件测试需要懂代码吗?
- 2024-06-0514-ShardingSphere的分布式主键实现
- 2024-06-03为什么以及如何要进行架构设计权衡?
- 2024-05-31全网首发第二弹!软考2024年5月《软件设计师》真题+解析+答案!(11-20题)