Zha*_*ami 918 javascript jslint
我包括声明:
"use strict";
Run Code Online (Sandbox Code Playgroud)
在我的大多数Javascript文件的开头.
JSLint之前从未对此提出过警告.但现在是,说:
使用"use strict"的功能形式.
有谁知道"功能形式"会是什么?
bdu*_*kes 998
包含'use strict';在包装函数中的第一个语句,因此它只影响该函数.这可以防止在连接不严格的脚本时出现问题.
请参阅Douglas Crockford的最新博客文章Strict Mode Is Coming To Town.
该帖子的示例:
(function () {
'use strict';
// this function is strict...
}());
(function () {
// but this function is sloppy...
}());
Run Code Online (Sandbox Code Playgroud)
更新: 如果您不想包装立即函数(例如,它是节点模块),则可以禁用警告.
对于JSLint(每个Zhami):
/*jslint node: true */
Run Code Online (Sandbox Code Playgroud)
对于JSHint:
/*jshint strict:false */
Run Code Online (Sandbox Code Playgroud)
或(根据Laith Shadeed)
/* jshint -W097 */
Run Code Online (Sandbox Code Playgroud)
要禁用JSHint中的任意警告,请检查JSHint源代码中的映射(文档中的详细信息).
更新2: JSHint支持node:boolean选项.见.jshintrcgithub.
/* jshint node: true */
Run Code Online (Sandbox Code Playgroud)
Zha*_*ami 217
如果您正在为NodeJS编写模块,那么它们已经封装了.通过在文件顶部包含来告诉JSLint你有节点:
/*jslint node: true */
Run Code Online (Sandbox Code Playgroud)
qri*_*ris 17
我开始在Cross Platform JavaScript博客文章后创建一个Node.js/browserify应用程序.我遇到了这个问题,因为我全新的Gruntfile没有通过jshint.
幸运的是,我在Leanpub的Grunt书中找到了答案:
如果我们现在尝试,我们将扫描我们的Gruntfile ...并得到一些错误:
Run Code Online (Sandbox Code Playgroud)$ grunt jshint Running "jshint:all" (jshint) task Linting Gruntfile.js...ERROR [L1:C1] W097: Use the function form of "use strict". 'use strict'; Linting Gruntfile.js...ERROR [L3:C1] W117: 'module' is not defined. module.exports = function (grunt) { Warning: Task "jshint:all" failed. Use --force to continue.这两个错误都是因为Gruntfile是一个Node程序,默认情况下JSHint不识别或允许使用
module和字符串版本use strict.我们可以设置一个接受我们的Node程序的JSHint规则.让我们编辑我们的jshint任务配置并添加一个选项键:Run Code Online (Sandbox Code Playgroud)jshint: { options: { node: true }, }
添加node: true到jshint options,将jshint放入"节点模式",为我删除了两个错误.
Sah*_*uja 16
使用以下内容在项目的根目录中添加文件.jslintrc(在jshint的情况下为.jshintrc):
{
"node": true
}
Run Code Online (Sandbox Code Playgroud)
| 归档时间: |
|
| 查看次数: |
273053 次 |
| 最近记录: |