假设您有两个函数
foo和
bar,它们正在同步执行:
function foo() { var returnValue = bar(); console.log(returnValue);}function bar() { return "bar";}为了使API“异步”是将其更改为使用回调:
function foo() { bar(function(returnValue) { console.log(returnValue); });}function bar(callback) { callback("bar");}但事实上,该代码仍然是完全同步的。回调是在同一个调用堆栈上执行的,没有进行线程优化,也没有扩展性。
这就成为了代码可读性和编码风格的问题。我个人认为典型的
var val =func();类型代码更易读和易于理解。唯一的缺点是,如果您某一天需要更改其功能
bar,则需要执行一些I /
O活动或调用其他异步的功能,则还需要更改API
bar。
我 个人的 喜好:在适用时使用传统的同步模式。涉及I / O或有疑问时,请始终使用异步样式。



