JSLint(Javascript 验证器网站)- 错误!隐含全局:

发布于 2024-10-11 00:50:40 字数 323 浏览 7 评论 0原文

我刚刚在 JSLint 测试了我的自定义画廊脚本。除了一个错误之外,所有错误都已解决。 隐含的全局错误..这真的是一个错误吗?我可以忽略它还是应该努力解决这个错误..?

感谢您的回复!

alt text

Error:
Implied global:
<bunch of vars and other stuff i dont know>

这是什么意思?顺便说一句,我使用 JQuery 库..也许这就是问题所在^^..

I just tested my custom gallery script at JSLint.. and all errors where solved except for one.
The implied global error.. Is this really an error? Can I ignore it or should I work on it to solve this error..?

Thank you for your responses!

alt text

Error:
Implied global:
<bunch of vars and other stuff i dont know>

What does this mean? BTW I use JQuery Library.. maybe thats the problem^^..

如果你对这篇内容有疑问,欢迎到本站社区发帖提问 参与讨论,获取更多帮助,或者扫码二维码加入 Web 技术交流群。

扫码二维码加入Web技术交流群

发布评论

需要 登录 才能够评论, 你可以免费 注册 一个本站的账号。

评论(3

や莫失莫忘 2024-10-18 00:50:40

如果您像本例一样使用外部声明的变量,请在文件顶部放置一个“global”语句,如下所示:

/*global $, document */

if you use externally declared variables like in this case, put a 'global' statement at the top of your file, like this:

/*global $, document */

灯角 2024-10-18 00:50:40

JSLint 文档说:

未定义的变量和函数

JavaScript 最大的问题是它
对全局变量的依赖,
特别隐含的全局变量。
如果变量没有显式地
声明(通常与 var
语句),然后 JavaScript 假设
该变量是全局的。这个可以
掩盖拼写错误的名字和其他
问题。

JSLint 期望所有变量和
函数先声明再声明
使用或调用。这使得它能够
检测隐含的全局变量。这是
也是很好的做法,因为它使得
程序更容易阅读。

请注意该错误。几乎每个编码约定都希望您不要使用隐含的全局变量。

可以使用 var 关键字声明变量。

JSLint documentation says:

Undefined Variables and Functions

JavaScript's biggest problem is its
dependence on global variables,
particularly implied global variables.
If a variable is not explicitly
declared (usually with the var
statement), then JavaScript assumes
that the variable was global. This can
mask misspelled names and other
problems.

JSLint expects that all variables and
functions are declared before they are
used or invoked. This allows it to
detect implied global variables. It is
also good practice because it makes
programs easier to read.

Care for that error. Nearly every coding convention wants you not to use implied globals.

Variables can be declared using the var keyword.

眼前雾蒙蒙 2024-10-18 00:50:40

当为浏览器编写 JavaScript 代码时,向 JSLint 表明您处于浏览器模式是很有用的,例如通过包含以下内容:

/*jslint browser: true */

这应该解析 'document'、'setTimeout' 和其他典型的浏览器默认值,

因为 jQuery 可能不被使用在与 JavaScript 相同的上下文中进行评估,您需要让它知道有用的“$”可用于:

/*global $ */

When writing JavaScript code for a browser, it is useful to indicate to JSLint that you are in browser mode, such as by including this:

/*jslint browser: true */

This should resolve 'document', 'setTimeout', and other typical browser defaults

Since jQuery is probably not being evaluated in the same context as your JavaScript, you'll need to let it be known that the ever-useful '$' is available with:

/*global $ */
~没有更多了~
我们使用 Cookies 和其他技术来定制您的体验包括您的登录状态等。通过阅读我们的 隐私政策 了解更多相关信息。 单击 接受 或继续使用网站,即表示您同意使用 Cookies 和您的相关数据。
原文