2011-11-22 28 views

回答

1

async是提供了一些方法,让你控制你的程序的流程库。例如:“我想要异步处理数组中的每个项目,并在所有处理完成后执行此功能”。

TameJS让你写的代码,是不是JS,但将被转换到JS。它的目标是让异步编程更容易遵循。

我亲自使用TameJS,有几个问题是:

  • 时报告错误,行号是JS文件的行号,而不是你写的TJS文件。跟踪错误是一种痛苦。
  • 可以有错误是很难追查。我记得有一个错误return res.send(200)请求没有被发送。现在它已经被修复了,但它使我的嘴巴变得非常糟糕。

我现在使用的是async,发现它可以使代码非常容易阅读和理解。

作为最终的建议,也许您应该尝试编写自己的代码来管理控制流。如果你对JS还不熟悉,那么看看这些库在内部正在做些什么,这将是一次非常好的学习体验。即使你处于紧张状态,最好理解外部库的作用,以便充分利用它们。

1

它们是完全不同的,虽然他们试图大致解决同样的问题。虽然async是给你一些辅助功能来管理您的异步代码一个非常酷的流量控制库,tamejs是(类似streamlinejs,这是我喜欢)的伪同步码了一堆语言添加的那个被编译到异步代码。

+0

我应该使用哪一个? – user847495

+0

@ user847495:取决于。对于低级逻辑,顶级的额外语言似乎不是一个好主意。但是,如果你正在编写一堆业务逻辑,像streamlinejs这样的东西可能是正确的工具(事实上,这就是它的目的)。 – thejh

相关问题