29. Task异步执行
leezozz 1/27/2023 js
# Task异步执行
异步任务的实现过于复杂,我们使用folktale中的Task来演示
folktale一个标准的函数式编程库
- 和lodash、ramda不同的是,他没有提供很多功能函数
- 只提供了一些函数是处理的操作,列如:compose、curry等,一些函子Task、Either、MayBe等
// folktale 中的compose、curry
const { compose, curry } = require('folktale/core/lambda')
const { toUpper, first } = require('lodash/fp')
let f = curry(2, (x, y) => {
return x + y
})
console.log(f(1, 2)) // 3
console.log(f(1)(2)) // 3
let f1 = compose(toUpper, first)
console.log(f1(['one', 'two'])) // ONE
1
2
3
4
5
6
7
8
9
10
11
12
2
3
4
5
6
7
8
9
10
11
12