作者热门文章
- iOS/Objective-C 元类和类别
- objective-c - -1001 错误,当 NSURLSession 通过 httpproxy 和/etc/hosts
- java - 使用网络类获取 url 地址
- ios - 推送通知中不播放声音
据我了解:
柯里化(Currying) - 函数返回函数
string.capitalize(1)('character')('at the end')
方法链——方法返回对象
string.lowercase.capitalize.uppercase
这种理解是否正确?
如果是这样,是否存在其中一个比另一个更好的情况?
因为在我看来,方法链更好,更易读。如果您点击“点”,您还可以自动完成显示可以使用的方法,它会显示您可以传递的所有参数。
最佳答案
更好的柯里化(Currying)等价物是 Builder 设计模式。
因此,你会做这样的事情:
myObject.setIndexRangeToEffect(1,1).setTextTransformation(UPPERCASE).execute();
在调用 execute
之前的任何时候,您基本上都有一个“curried”操作对象。
关于Javascript 柯里化(Currying)与方法链,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/4120968/
我是一名优秀的程序员,十分优秀!