【问题标题】:How to fix "foo is not defined" error reported by JSlint? [duplicate]如何修复 JSlint 报告的“foo is not defined”错误? [复制]
【发布时间】:2012-08-11 01:54:51
【问题描述】:

可能重复:
JSLint: was used before it was defined

我运行 JSlint 并看到类似的错误:

'foo' 未定义。
var x = foo();

foo 是在另一个JavaScript 文件foo.js 中定义的函数。据我了解,JavaScript 中没有“import / require”指令来引用另一个源文件中定义的foo 函数。

如何解决JSlint 报告的这个错误?

【问题讨论】:

标签: javascript jslint


【解决方案1】:

使用全局指令告诉 JSLint foo 的假定存在。

/*global foo */

http://www.jslint.com/help.html#global

【讨论】:

  • 我一直以为没有空格:/*global
  • 你是对的;我不确定它是否真的有所作为。然后我测试了,/*global 可以工作,但/* global 不行。
  • 这很好,但我不喜欢在我的生产代码中乱扔测试或代码质量 sn-ps。我认为最好将这些声明在一个单独的文件中,限制在测试环境中。
  • 我关心的不是下载速度。这是开发人员读取的源代码的污染。
  • 还有一个.jshintrc 文件,其中有一个globals 部分,您可以在其中定义它们。这样你就不必用类似的东西污染你的源文件了。
猜你喜欢
  • 1970-01-01
  • 2019-11-27
  • 2021-04-26
  • 1970-01-01
  • 1970-01-01
  • 2022-11-23
  • 2021-02-05
  • 2019-09-19
  • 1970-01-01
相关资源
最近更新 更多