我正在使用jslint来验证我的代码 我的所有页面都有“严格使用” 如何禁用消息“使用'use strict'的函数形式”,但保留“Missing'use strict'statement”警告,所以我不会忘记将它放在新文件上?
由于
答案 0 :(得分:14)
根据Crockford's post,您需要将所有内容都包装在函数中......
(function () {
"use strict";
// the rest of your file goes here...
}());
你也可以改用jshint,它有一个“globalstrict”选项可以完全满足你的要求,而不必将所有东西都包裹在一个函数中
答案 1 :(得分:2)
如果不更改驱动jslint的javascript文件,则无法完成。
对我来说,功能形式是一种胡思乱想的工作实践,因此不能强迫别人。
并非所有人都需要合并和缩小,但即使我这样做,我也会将应用相同规则的代码组合在一起,因此文件声明就足够了。
尽管jshint具有您所需的功能。最新的jslint现在比jshint更先进,发现更多的弱点并应对更复杂的代码。我喜欢jshint,但它跟不上jslint。
答案 2 :(得分:0)
我找到的解决方案是使用“use strict”创建单行文件;没有别的
将它作为连接包中的第一个文件,将其添加到jslint的排除列表中,切换sloppy = true pragma
可能会有一些副作用没有找到草率的代码,但我对文档的理解是它只是检查“使用严格”;线
答案 3 :(得分:-2)
这是一个抑制“使用'use strict'的函数形式的黑客。”
$ uname -a
Darwin 13.0.0 Darwin Kernel Version 13.0.0
找出jslint分布的位置。
$ which jslint
/usr/local/bin/jslint
$ ls -l /usr/local/bin/jslint
lrwxr-xr-x 1 root admin 40 11 Feb 2013 /usr/local/bin/jslint -> ../lib/node_modules/jslint/bin/jslint.js
$ cd /usr/local/lib/node_modules/jslint/
$ ls
LICENSE README.md lib package.json
Makefile bin node_modules
评论警告。
$ sudo vim lib/jslint.js
search for 'function_strict'
comment out the line 'warn('function_strict');'
note: the exact line might vary on some versions but just comment it out.
如果它不起作用,您可能安装了多个版本的jslint,并且没有编辑正确的版本。
sudo find / -name jslint.js