简单理解函数柯里化

·  阅读 359
简单理解函数柯里化

什么是函数的柯里化

维基百科:

在计算机科学中,柯里化(Currying),又译为卡瑞化或加里化,是把接受多个参数的函数变换成接受一个单一参数(最初函数的第一个参数)的函数,并且返回接受余下的参数而且返回结果的新函数的技术。

简单理解就是 : 通过函数的调用继续返回函数的方式,实现多次接受参数最后统一处理的函数编码形式。

首先我们实现一个实例 我们实现一个函数 返回传入参数的和

常见写法

function sum(a,b,b){
	return a + b + c
}

const result = sum(1,2,3)
console.log(result) // 6
复制代码

像这个写法是很常见也很符合直觉的写法了

但像柯里化写法又是怎样的呢?

我们可以实现一下

柯里化写法

function sum(a){
	return (b) => {
		return (c) => {
			return a + b + c
		}
	}
}
const result = sum(1)(2)(3)
console.log(result) // 6
复制代码

在这里 就满足了柯里化的定义了 通过函数的调用继续返回函数的方式,实现多次接受参数最后统一处理的函数编码形式。 看到这里 想必一些朋友就会有疑惑了 为什么这么写呢? 简单的事情为什么这么复杂化 没必要啊!

为什么要柯里化

像上面这个写法,只是个演示,能让大家明白它的原理。 当然柯里化肯定是有他的点的 如:

  • 尽可能地函数化
  • 减少代码冗余,也能增加可读性
  • 装逼😄
分类:
前端
标签:
分类:
前端
标签:
收藏成功!
已添加到「」, 点击更改