JSHintの設定ファイル
JSHintはデフォルトだと全然チェックしない
JSLintが鬱陶しいからJSHintを使っている人は多いと思う。
ところが、JSHintはデフォルトだとチェック基準がすごく甘くてチェックとして機能しない。
例えば、IEで即スクリプトエラーになる「ハッシュの末尾カンマ」さえもデフォルトではチェックしない。
var dct = { foo: 1, bar: 2, }
↑こういうやつな。
$HOME/.jshintrc を書いておくとチェックルールを変更できる
そして、~/.jshintrcというファイルにJSON形式でオプションを設定しておくとjshintコマンドを実行したときに自動的に読み込んで処理してくれる。
わたしは以下の設定くらいは入れている。
{
"indent": 4,
"globalstrict": false,
"es3": true, // IE6, 7, 8向け
"unused": true, // 宣言して使っていない変数に警告
"undef": true, // var がついていない変数に警告
"trailing": true, // 行末スペース禁止
"laxcomma": true, // 前置カンマ禁止
"loopfunc": true // ループの中で関数の定義禁止
}