73

一部の人々は、先頭のアンダースコアの存在を、変数が「プライベート」であること、そのようなプライバシーはフィクションであることを意味すると考えていることを知っています。これが、JSLintがそのような名前をエラーメッセージで報告する理由であると思います。

構築しているWebサイトでGoogleAnalyticsを使用しています。「_gaq」などのGAの変数を参照します。

私は自分のJSコードを100%JSLintクリーンにしようとしています(私は自分のコーディングスタイルに信心がないので、Crockford氏の助言に同意します)。とはいえ、Googleの変数名については何もできません...したがって、100%「クリーン」にすることはできないと思います。

メッセージを誤解した場合に備えて、ここに投稿します。JSLintのプラクティスに準拠するために何かを行うことができます。

4

4 に答える 4

72

ああ、私はこれを処理しました...私は、JSLintコマンドでアンダースコアの接頭辞が付いた変数を使用するステートメントをラップして無効にし、次にこのクラスのエラーを再度有効にします:

/*jslint nomen: true*/
... statement(s) with _var ...
/*jslint nomen: false*/
于 2010-06-14T18:44:38.537 に答える
51

これを処理する最善の方法は、「識別子内のぶら下がりを許容する」(nomen) オプションを有効にすることです。詳細については、 http://www.jslint.com/lint.htmlを参照してください...

于 2012-02-01T14:48:28.280 に答える
15

JSLint は単なるコード品質ツールです。テストに完全に合格しないからといって、コードが悪いわけではありません。それは単に、その作成者が定めたすべての慣習に従わないことを意味します。JSLint は非常に優れた提案をしますが、それらすべてを満たすことが常に可能であるとは限りません。特に、JSLint に対してテストされていない他の誰かのライブラリを使用する場合はそうです。ソース コードに無意味なメタコメントを散らかすのではなく、"Disallow dangling _ in identifiers" オプションを無効にしてコードをチェックする必要があります。

于 2011-06-06T08:40:29.053 に答える
8

node.js で JSLInt を使用します。--nomen フラグを渡すと、この機能を回避できます

jslint --nomen myfile.js 
于 2012-08-09T14:43:06.183 に答える