第四章 柯里化(curry)

最后更新于:2022-04-02 04:17:29

[TOC] ## 科里化 curry 的概念很简单:只传递给函数一部分参数来调用它,让它返回一个函数去处理剩下的参数 ## 实例 hello world ``` var add = function(x) { return function(y) { return x + y; }; }; var increment = add(1); var addTen = add(10); increment(2); // 3 addTen(2); // 12 ``` 匹配字符串 ``` var curry = require('lodash').curry; var match = curry(function(what, str) { return str.match(what); }); //方式一 match(/\s+/g, "hello world"); // 方式二 var hasSpaces = match(/\s+/g); // function(x) { return x.match(/\s+/g) } hasSpaces("hello world"); ``` 这里表明的是一种“预加载”函数的能力, ## 练习题 > [练习题](https://llh911001.gitbooks.io/mostly-adequate-guide-chinese/content/ch4.html#%E4%B8%8D%E4%BB%85%E4%BB%85%E6%98%AF%E5%8F%8C%E5%85%B3%E8%AF%AD%E5%92%96%E5%96%B1)
';