Javascript 这两个node.js模块做的是相同的事情吗?
这是两个模块。对我来说,似乎是一样的,对吗Javascript 这两个node.js模块做的是相同的事情吗?,javascript,node.js,asynchronous,module,Javascript,Node.js,Asynchronous,Module,这是两个模块。对我来说,似乎是一样的,对吗 或者……它们在不同的情况下使用吗?它们完全不同,尽管它们试图解决大致相同的问题。虽然async是一个非常酷的流控制库,它为您提供了一些帮助函数来管理异步代码,但tamejs是(类似于,我更喜欢)为编译为异步代码的伪同步代码添加的一组语言。async是一个库,它提供了一些方法来控制程序流。例如:“我希望异步处理数组中的每个项,并在所有处理完成后执行此函数” TameJS使您编写的代码不是JS,但会转换为JS。它的目的是使异步编程的方法更容易遵循 我个人使
或者……它们在不同的情况下使用吗?它们完全不同,尽管它们试图解决大致相同的问题。虽然
async
是一个非常酷的流控制库,它为您提供了一些帮助函数来管理异步代码,但tamejs是(类似于,我更喜欢)为编译为异步代码的伪同步代码添加的一组语言。async
是一个库,它提供了一些方法来控制程序流。例如:“我希望异步处理数组中的每个项,并在所有处理完成后执行此函数”
TameJS使您编写的代码不是JS,但会转换为JS。它的目的是使异步编程的方法更容易遵循
我个人使用了TameJS,但它存在一些问题:
- 报告错误时,行号是JS文件的行号,而不是您编写的TJS文件。跟踪错误是一种痛苦
- 可能存在难以追踪的bug。我记得在
中有一个bug,请求没有被发送。现在已经修好了,但味道很差return res.send(200)
async
,发现它可以使代码非常容易阅读和理解
最后一个建议是,也许您应该尝试编写自己的代码来管理控制流。如果您是JS新手,那么了解这些库的内部功能将是一次非常好的学习体验。即使在时间紧迫的情况下,也最好了解外部库的功能,以便充分利用它们。@user847495:dependence。对于低级逻辑来说,在上面加一个额外的语言似乎是个坏主意。但是,如果您正在编写一系列业务逻辑,那么streamlinejs之类的工具可能是正确的(实际上,这就是它的构建目的)。