最近在看函数式编程。用的是ramda库。
但各种api使用一脸懵逼。
var func3=_.compose(p,trace("f3:"), f); var func4=_.filter(_.compose(p,trace("f4:"), f)); console.log(func3(3))//36 console.log(func4([3]))//[3] why? what happened
Ramda 会自动柯里化,这么看可以理解不
_.filter(func3, [3])
func3(3) 返回 36,也就是 true 了,所以 filter 一遍 3 还在
func3(3)
Ramda 会自动柯里化,这么看可以理解不
func3(3)
返回 36,也就是 true 了,所以 filter 一遍 3 还在