许多grunt.js脚本以:
开头/*global module:false*/
module.exports = function(grunt) {
但第一行评论的原因是什么?
答案 0 :(得分:16)
这是JSLint或JSHint的指令。它告诉JSLint / JSHint解析器标识符module
是在别处定义的,因此它不会抛出错误,告诉您module
未定义。没有它,解析器将遇到对module
的引用,并认为您正在尝试引用未定义的变量。
来自JSLint docs:
JSLint还识别一个
/*global*/
指令,该指令可以向JSLint指示此文件中使用的变量是在其他文件中定义的。该指令可以包含逗号分隔的名称列表。
除了选项之外,您还可以让JSHint知道它应该期望的全局变量:
/*global DISQUS:true, jQuery:false */
在上面的示例中,JSHint将允许您覆盖
DISQUS
,但如果您尝试覆盖jQuery
则会抱怨。