函数柯里化简单了解
2020-8-25
| 2023-4-28
字数 781阅读时长 2 分钟
beizhu
type
Post
status
Published
date
Aug 25, 2020
slug
summary
tags
category
技术
icon
password

函数的柯里化

一、概念

接受多个参数的函数转换成接受单一参数的函数的操作。通俗理解为:只传递给函数的一部分参数来调用它,让它返回一个新函数去处理剩下的参数。
测试可用quokka.js(免费版即可) vscode的插件

二、参数定长柯里化

2.1 例一

用闭包把传入参数保存起来,当传入参数的数量足够执行函数时,就开始执行函数

2.2 例二

柯里化是在一个函数的基础上变换,得到一个新的预设了参数的函数。最后在调用新函数时候,实际上还是会调用柯里化前的原函数。
而且柯里化得到的新函数可以继续被柯里化,有点递归的感觉,不对不是递归,有点套娃的感觉
实现原理都是「用闭包把传入参数保存起来,当传入参数的数量足够执行函数时,就开始执行函数」

三、实际使用

1.bind

MDN的解释
Function.prototype.bind()方法创建一个新的函数,在bind()被调用时,这个新函数的this被指定为bind的第一个参数,而其余参数会被指定为新函数的参数,供调用时使用

总结!

柯里化属于函数式编程思想。柯里化时只是返回一个预置参数的新函数,没有立刻执行,实际上在满足条件后才会执行。不污染原函数。
H5唤醒APP 简单hacker方法styled-components浅入浅出
Loading...