如何通过ES6实现函数柯里化只需一行代码?

更新于
2026-09-26 21:24:16
1阅读来源:SEO教程
  • 内容介绍
  • 文章标签
  • 相关推荐

本文共计1371个文字,预计阅读时间需要6分钟。

如何通过ES6实现函数柯里化只需一行代码?

简化创新是什么?首先看看下面的这个函数+let store=(a,b,c)=这是你的七个小面 // 函数就像一个小卖部,一锅七个小面要三元:a,b,c(五个参数) + 那个简化创新是什么?就是买面。

柯里化是干什么的?首先看看下面这个函数

如何通过ES6实现函数柯里化只需一行代码?

let store = (a,b,c) => "这是你的七仔面" //函数就好像一个小卖部,一碗七仔面要三张软妹币:a,b,c (五个参数)

那函数柯里化是什么?就是我们买面吃的过程可能是这样:

let curryStore = curry(store) //刚刚的小卖部被柯里化了 //最佳状况 curryStore(1,5,1)// 老板,刚好!不用找了,刚好七块钱。老板: "这是你的七仔面" //偶尔出现的情况 let boss = curryStore(5) //老板,这五块钱你先拿着,我找找有没有一块钱。老板:…… boss = boss(1) //有了老板,这一块钱你先拿着,我找找还有没有一块钱。。老板:…… boss(1) //哈哈,终于找到了,给!老板:"这是你的七仔面" curryStore(5)(1)(1) //等价于上诉情况

所以这里我们可以看到,函数柯里化,是可以用来慢慢凑齐参数,延迟函数的执行。

阅读全文
标签:柯里化

本文共计1371个文字,预计阅读时间需要6分钟。

如何通过ES6实现函数柯里化只需一行代码?

简化创新是什么?首先看看下面的这个函数+let store=(a,b,c)=这是你的七个小面 // 函数就像一个小卖部,一锅七个小面要三元:a,b,c(五个参数) + 那个简化创新是什么?就是买面。

柯里化是干什么的?首先看看下面这个函数

如何通过ES6实现函数柯里化只需一行代码?

let store = (a,b,c) => "这是你的七仔面" //函数就好像一个小卖部,一碗七仔面要三张软妹币:a,b,c (五个参数)

那函数柯里化是什么?就是我们买面吃的过程可能是这样:

let curryStore = curry(store) //刚刚的小卖部被柯里化了 //最佳状况 curryStore(1,5,1)// 老板,刚好!不用找了,刚好七块钱。老板: "这是你的七仔面" //偶尔出现的情况 let boss = curryStore(5) //老板,这五块钱你先拿着,我找找有没有一块钱。老板:…… boss = boss(1) //有了老板,这一块钱你先拿着,我找找还有没有一块钱。。老板:…… boss(1) //哈哈,终于找到了,给!老板:"这是你的七仔面" curryStore(5)(1)(1) //等价于上诉情况

所以这里我们可以看到,函数柯里化,是可以用来慢慢凑齐参数,延迟函数的执行。

阅读全文
标签:柯里化