作者热门文章
- html - 出于某种原因,IE8 对我的 Sass 文件中继承的 html5 CSS 不友好?
- JMeter 在响应断言中使用 span 标签的问题
- html - 在 :hover and :active? 上具有不同效果的 CSS 动画
- html - 相对于居中的 html 内容固定的 CSS 重复背景?
目前我正在尝试重构我的代码。
我这样做的方法之一是将不同的功能(例如敌人物理)分离到不同的文件(例如敌人.js)中。
除此之外,我还有一个 globals.js,其中包含所有全局变量和常量,例如每个刻度要应用的重力量。
如果我有代码行:
enemy.y += gravity;
运行敌人.js 中的每个刻度并且:
var gravity = 0.1;
在globals.js中,由于全局变量在所有javascript文件中都可以访问,即使它们是外部定义的,敌人.y的值也会增加,因此每次重绘时敌人都会向下移动。
但是,当使用括号运行 jslint 时,我得到:
'gravity' was used before it was defined.
由于变量没有在 jslint 正在查看的同一文件中定义,因此如果我将重力移到同一文件中,错误将不再出现,但这种方式使得多文件方法毫无用处。
问题是,这个错误消息仍然非常有用,例如,如果我拼错了一个常量名称,例如如果我输入 graviy ,我会得到:
'graviy' was used before it was defined.
而且我知道我拼错了一个常量名称。
所以我不想抑制这个错误消息,相反,有没有办法告诉 jslint 包含其他 javascript 文件中定义的全局变量,而不必重新定义它们?
最佳答案
html 中的文件从上到下加载,因此如果您在 head 标记中加载 globals.js,它将加载并且后面的每个 js 文件都可以访问全局变量
关于javascript - 括号中的 JSLint : Is there a way to use variables defined in other files?,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/35291707/
我是一名优秀的程序员,十分优秀!