小编bba*_*ton的帖子

什么时候a => f(a)不等于f?

lodash的新手,并尝试使用它来获得更多的了解。我不了解以下代码的行为。

在了解到的arity参数之后_.curry,我得到了一个代码片段,该片段产生的结果对我来说似乎很奇怪。

const words = ['jim', 'john'];
const pad10 = words =>
    _.map(words, word => _.pad(word, 10));

console.log(pad10(words)); // [ '   jim    ', '   john   ' ]

const flipMap = _.flip(_.map);
const flipPad = _.flip(_.pad);

const curriedFlipMap = _.curry(flipMap, 2);

const pad10v2 = curriedFlipMap(word => flipPad(' ', 10, word));

console.log(pad10v2(words)); // [ '   jim    ', '   john   ' ]

const curriedFlipPad = _.curry(flipPad, 3);
const padWord10 = curriedFlipPad(' ', 10);
const pad10v3 = curriedFlipMap(word => padWord10(word));

console.log(pad10v3(words)); // …
Run Code Online (Sandbox Code Playgroud)

javascript functional-programming curry lodash

6
推荐指数
1
解决办法
210
查看次数