JavaScript には正式なコーディング スタイル ガイドがありません。代わりに、次のような一般的なコーディング スタイルがあります。
1. コードスタイルの比較
1.1 インデントスペース 2 つ、インデントなし、タブ インデントなし: Google、NPM、Node.js、Idiomatic
タブインデント: jQuery
4 スペース: クロックフォード
コンパクトなスタイルを使用する: Google、NPM、Node.js
最大 80 文字: Google、NPM、Node.js、Crockford (コード ブロック内の場合、2 つのスペース以外のインデントを使用すると、関数の引数を最初の関数の引数の位置に揃えることができます。別のオプションとして、インデントに 4 つのスペースを使用します。自動的にラッピング)
コメントはありません: jQuery、慣用句
常にセミコロンを使用し、暗黙的な挿入に依存しないでください: Google、Node.js、Crockford
特定の状況ではexpectを使用しないでください: NPM
コメントはありません: jQuery、慣用句
JSDoc の規則に従います: Google、Idiomatic
コメントはまだありません: NPM、Node.js、jQuery、Crockford
推奨される一重引用符: Google、Node.js
二重引用符: jQuery
コメントはありません: NPM、慣用句、クロックフォード
カンマなしで一度に 1 つずつ宣言します: Node.js
同じ行で左中括弧を使用します: Google、NPM、Node.js、Idiomatic、jQuery、Crockford
1.9 グローバル変数
グローバル変数を使用しないでください: Google、Crockford (Google は、グローバル変数の名前の競合はデバッグが難しく、2 つのプロジェクトを統合するときに厄介な問題を引き起こす可能性があると述べています。共通の JavaScript コードの共有を容易にするために、競合を避けるためには規約を確立する必要があるとクロックフォード氏は考えています)
コメントはありません: 慣用的、jQuery、NPM、Node.js
2 命名スタイル
2.1 変数の名前付け
先頭の最初の単語は小文字で、後続のすべての単語の最初の文字は大文字になります: Google、NPM、Node.js、Idiomatic
2.2 定数の名前付け
大文字を使用してください: Google、NPM、Node.js
2.3 関数の名前付け
先頭の最初の単語は小文字で、後続のすべての単語の最初の文字は大文字になります (キャメルケース): Google、NPM、Idiomatic、Node.js (長くて説明的な関数名を使用することをお勧めします)
2.4 配列の名前付け
複数形を使用します: 慣用的
2.5 オブジェクトとクラスの名前付け
次のフォームを使用します: Google、NPM、Node.js
2.6 その他の命名
長いファイル名と構成キーには、すべて小文字、ハイフン、CSS 形式を使用します: NPM
3. 上記のスタイルに従って .jshintrc ファイルを構成します
JSHint (http://www.jshint.com/) は、コード スタイル関連の問題を警告するために使用できる JavaScript 構文およびスタイル チェック ツールです。これは、一般的に使用される多くのエディターにうまく統合でき、チームのコーディング スタイルを統一するための優れたツールです。
利用可能なオプションは、JSHint ドキュメントで確認できます: http://www.jshint.com/docs/#options
次に、上記の各カテゴリの最初のスタイルに基づいて .jshintrc ファイルを作成します。これをプロジェクトのルート ディレクトリに置くと、JSHint-avare コード エディターがこれに従ってプロジェクト内のすべてのコード スタイルを統一します。
さらに、次のヘッダーを JavaScript ファイルに追加する必要があります:
Node.js ファイルに以下を追加する必要があります:
4. Git にコミットする前に JSHint を自動的に実行します
すべての JS コードが .jshintrc で定義されたスタイルと一致していることを確認したい場合は、新しい変更をコミットしようとするときに、次のコンテンツを .git/hooks/pre-commit ファイルに追加できます。スタイル チェックはファイルがプロジェクトに追加されるときに自動的に実行されます。
ファイル名=($(git diff --cached --name-only HEAD))
どの jshint &> /dev/null
if [ $? -ne 0 ];
それから
echo "エラー: jshint が見つかりません"
echo "インストール方法: sudo npm install -g jshint"
1番出口
ふぃ
「${filenames[@]}」の私用
する
If [[ $i =~ .js$ ]];
それでは
echo jshint $i
jshint $i
if [ $? -ne 0 ];
それから
1番出口
フィ
ふぃ
完了