在JavaScript中产生新类型的错误

在JavaScript中产生新类型的错误,javascript,node.js,ecmascript-6,async-await,Javascript,Node.js,Ecmascript 6,Async Await,我偶尔会忘记使用wait关键字,例如: const foo = bar(); // instead of const foo = await bar(); 那些虫子很难被发现。有哪些方法、库或工具可用于防止此类错误?您应该使用类似linter的工具。如果您将该工具与IDE/编辑器集成,并启用默认的规则集(或您自己的),那么您的生活将变得更加轻松 我很确定你的例子符合规则,不允许在没有适当处理的情况下使用承诺。在您的情况下,bar()返回一个承诺,但没有wait或then来处理结果 要启用该规则

我偶尔会忘记使用wait关键字,例如:

const foo = bar();
// instead of
const foo = await bar();

那些虫子很难被发现。有哪些方法、库或工具可用于防止此类错误?

您应该使用类似linter的工具。如果您将该工具与IDE/编辑器集成,并启用默认的规则集(或您自己的),那么您的生活将变得更加轻松

我很确定你的例子符合规则,不允许在没有适当处理的情况下使用承诺。在您的情况下,
bar()
返回一个承诺,但没有
wait
then
来处理结果

要启用该规则,您必须安装ESLint和
插件。我还强烈建议您在JavaScript上使用TypeScript,因为它会在开发过程中捕获一系列错误,您可以将TS代码转换为常见的JS代码。

没有特别的方法来防止忘记“wait”标记。然而,WebStorm可以帮助你识别那些缺失的关键词。不等待承诺通常是完全有效的