我包括以下声明:
"use strict";
在我大多数Javascript文件的开头。
JSLint从未对此发出警告。但现在是这样说:
使用“使用严格”的功能形式。
有谁知道“函数形式”是什么?
'use strict';作为包装函数中的第一条语句包括在内,因此它仅影响该函数。这样可以防止在连接不严格的脚本时出现问题。
'use strict';
请参阅道格拉斯·克罗克福德(Douglas Crockford)的最新博客文章“严格模式即将来临”。
该帖子中的示例:
(function () { 'use strict'; // this function is strict... }()); (function () { // but this function is sloppy... }());
更新: 如果您不想包装立即函数(例如,它是一个节点模块),则可以禁用警告。
/*jslint node: true */
对于 JSHint :
/*jshint strict:false */
或(根据Laith Shadeed的说法)
/* jshint -W097 */
要禁用来自JSHint的任何警告,请检查JSHint源代码中的映射(在docs中有详细信息)。
更新2: JSHint 支持node:boolean选项。见.jshintrcgithub。
node:boolean
.jshintrc
/* jshint node: true */