JavaScript回调和功能编程
|
“功能编程仅描述要在程序输入上执行的操作,而不使用临时变量来存储中间结果。”
问题是如何应用函数式编程,又如何使用利用回调的异步模块。
在某些情况下,您希望回调函数访问一个变量,该变量将调用异步引用的函数构成,但是已经定义了回调函数的签名。
例:
function printSum(file,a){
//var fs =....
var c = a+b;
fs.readFile(file,function cb(err,result){
print(a+result);///but wait, I can\'t access a......
});
}
当然我可以访问a,但这将违反纯函数式编程范例
没有找到相关结果
已邀请:
3 个回复
怪酞撩匹
如有必要,只需将带有变量和作用域的“ 2”注入到函数中。 因为您抱怨API
叫做咖喱。这是更多的FP。
傻寺俊擒
另一方面,从功能上讲,以下操作不可行
为了更接近代码中的内容,请考虑您有一个函数调用ѭ7
肉脓措伪
如今,使用默认参数,可以将a传递到回调中。