11

コードの検証に jslint を使用しています。
すべてのページで「use strict」を使用しています。
「'use strict' の関数形式を使用してください」というメッセージを無効にしながら、「'use strict' ステートメントがありません」という警告を保持して、新しいファイルに配置することを忘れないようにするにはどうすればよいですか?

ありがとう

4

4 に答える 4

14

Crockfordの投稿によると、すべてを関数でラップしたいと思うでしょう...

(function () {
    "use strict";
    // the rest of your file goes here...
}());

代わりにjshintを使用することもできます。これには、関数ですべてをラップすることなく、要求していることを正確に実行できる「 globalstrict 」オプションがあります。

于 2012-01-21T18:23:40.300 に答える
2

jslint を駆動する JavaScript ファイルを変更しないと実行できません。

私にとって、関数形式は厄介な作業慣行であるため、他の人に強制することはできません.

すべての人が結合して縮小化する必要があるわけではありませんが、もし私が結合したとしても、同じルールを適用するコードを結合するなら、file ステートメントで十分です。

jshint にはまさに必要な機能がありますが。最新の jslint は jshint よりも高度になり、より多くの弱点を発見し、より複雑なコードに対処します。私はjshintが好きですが、jslintに追いついていません。

于 2012-01-21T18:20:15.260 に答える
0

これに対して私が見つけた解決策は、「use strict」を使用して単一行のファイルを作成することでした。何もありません

連結パッケージの最初のファイルにして、それを jslint の除外リストに追加し、sloppy=true プラグマを切り替えます

ずさんなコードを拾わないことにはいくつかの副作用があるかもしれませんが、ドキュメントについての私の理解では、「厳密な使用」をチェックするだけです。ライン

于 2013-06-06T22:33:08.663 に答える
-2

これは、「'use strict' の関数形式を使用する」を抑制するためのハックです。

    $ uname -a
    Darwin 13.0.0 Darwin Kernel Version 13.0.0
  1. 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
    
  2. 警告をコメントアウトします。

    $ 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.
    
  3. うまくいかない場合は、複数のバージョンの jslint がインストールされていて、適切なバージョンを編集していない可能性があります。

    sudo find / -name jslint.js
    
于 2014-02-11T21:53:30.073 に答える