コーディング規約
イシュー
- 今回はソースコードレビューがあるということで、コーディング規約を作ることとなった。
- 基本的にはそんなに縛りたくないし、JSLintで自動チェックしたいところ
参考
- http://google-styleguide.googlecode.com/svn/trunk/javascriptguide.xml
- http://google-styleguide.googlecode.com/svn/trunk/htmlcssguide.xml
- Google JavaScript スタイルガイド - 日本語訳 - トップページ
- Google Java Style (非公式和訳)
- Secure Coding Guideline - developer.force.com
- Salesforceのコーディングガイドライン
- JP:Secure Coding Guideline - developer.force.com
Linter
- Javascriptの構文チェックツール
参考
- http://www.jslint.com/lint.html
- JSLintを使おう!(基本解説とオプション一覧)|もっこりJavaScript|ANALOGIC(アナロジック)
- Closure Linter | Google Developers
- google 提供の closure linter
- ESLint - Pluggable JavaScript linter
- ESLint
ESLint
- npm でインストールできるLint
参考
- ESLintについてのメモ - Qiita
- 時代はESLint。JSLintでもJSHintでもなくESLint。 - Qiita
- List of available rules - ESLint - Pluggable JavaScript linter
- ESLint 0.1.0がリリースされたので、JSHintとの違いやプラグインの書き方について | Web Scratch
ESLint 設定
- .eslintrc に設定を記述する
{ // "env" : { "browser": true }, "globals": { "$": false, "console": false }, "rules": { "strict": 1, "no-console": 0 } }
- code
(function () { "use strict"; var g = "g", t = "t"; (function () { var global = Function("return this")(); g = global; t = this; })(); console.log("g", g); // => _g window console.log("t", t); // => _t undefined })();
参考
- rule から no-consoleを外さないと、consoleが定義されていないと怒られる
- “use strict”(厳格モード)を使うべきか?|もっこりJavaScript|ANALOGIC(アナロジック)