检测变量和函数在Javascript中具有相同名称的ESlint规则?

我碰巧将一个变量命名为与 Node.js 中的函数相同的名称。这并不顺利,Node 10 不喜欢它。由于这是一个钩子函数(不是从应用程序的 UI 调用),我花了一些时间才发现出了什么问题。

是否有一些 ESLint 规则可以发现这些类型的错误?这是在 Firebase 下,并且 ESLint 在部署到生产服务器期间运行。

实际的冲突使用的变量名的是同一块,像这样:const a = a(x)


明月笑刀无情
浏览 155回答 2
2回答

FFIVE

我不认为这样的工具可能存在的JavaScript,如JavaScript并没有真正消除歧义赋给变量对象的类型。function a() {}...基本上相当于:var a = function () {};此外,a此示例中的值可以稍后重新分配。linter 可能会帮助你,在一些 IDE 中可能会有一些帮助,但他们不会真正了解程序员的意图。

慕田峪7331174

有一个无重复声明的规则,你可以在设置ESLint,它告诉你在你的代码有问题的行。/*eslint no-redeclare: "error"*/function a() {}const a = a();=> 4:5  error  'a' is already defined  no-redeclare此外ESLint会引发与错误的标准配置。function a() {}var a = a();=> 4:5  error  Parsing error: Identifier 'a' has already been declared当然,使用const,如果您尝试运行脚本,您也会收到该行的语法错误。
打开App,查看更多内容
随时随地看视频慕课网APP

相关分类

JavaScript