JavaScript でのコードスタイルアシスタンス
ReSharper は、コードをすっきりとクリーンに保つための多くの機能を提供します。 他の ReSharper の機能の大部分と密接に連携しているため、特定のコードスタイルに従ってコードを作成し、既存のコードベースを変更できます。 命名標準、フォーマット規則、その他のさまざまな小さな要素を含むコードスタイルは、非常に詳細なレベルに構成してチーム全体で共有できます。
他の言語と同様に、すべての JavaScript コードスタイル環境設定は、 スコープ内で修正または コードのクリーンアップのいずれかを使って、希望するスコープに 1 回のコマンドで適用できます。
ReSharper は、JavaScript で次のコードスタイル支援機能を提供します:
命名スタイル
ReSharper は、コード内のシンボルに対して希望する命名スタイルを定義、管理、適用するのに役立ちます。 特定の識別子を対象とするルールのセットがあり、それぞれが制約のセットを持っています。 各ルールには、複合語、アンダースコア、接尾辞、接頭辞などの大文字化を定義する 1 つ以上の関連スタイルを含めることができます。
これらのルールは、ReSharper が コード補完や コード生成機能で新しいコードを作成し、 コードテンプレートを適用し、 リファクタリングを実行する際に考慮されます。 ReSharper は、命名規則違反を 検出して修正するのにも役立ちます。 必要に応じて、命名規則の自動チェックを 構成または無効にできます。
命名スタイルの構成と適用の詳細については、 ネーミングスタイル を参照してください。
コードフォーマットルールの管理と適用
コードスタイルの重要な側面は、コードのフォーマット方法です。つまり、空白、タブ、改行を使ってコード要素をどう配置するか、インデントにタブを使うかどうかとその方法、長い行を折り返すかどうかとその方法などです。
ReSharper の広範なコードフォーマット規則セットには、デフォルトの Visual Studio フォーマットオプションや多くのベストプラクティスを考慮したデフォルト構成があります。 フォーマットルールのすべての詳細を 構成し、コードにルールを適用できます。 これらのルールは、ReSharper が コード補完や コード生成機能で新しいコードを生成する際、 コードテンプレートを適用したり、 リファクタリングを実行したりする場合にも適用されます。 フォーマット規則は、現在の選択範囲、現在のファイル、またはソリューション全体までのより広いスコープの 既存のコードにも適用できます。
ReSharper は、 共有設定の仕組みを利用してフォーマット環境設定を保存します。 グループのオプションページで フォーマットルールを設定できます。 また、 EditorConfig および Clang 形式ファイルに フォーマット設定を保存して共有することもできます。
引用スタイル
JavaScript の仕様では、文字列リテラルを処理する際に、シングル引用符(')と double 引用符(")の両方を使用できます。 プロジェクトまたはソリューション内では、同じ引用符スタイルを使用することをお勧めします。 この操作は、ReSharper オプションの ページで、該当するコードインスペクションの 重要度レベルと合わせて環境設定を構成することで実行できます。 ReSharper は、環境設定と異なるコードを検出してハイライトします。 既存のコードベースでこの設定を適用するには、 組み込みプロファイル フルクリーンアップまたは 再フォーマットして構文スタイルを適用のいずれかを使用してコードクリーンアップを実行するか、対応するオプションが選択された場所で カスタムプロファイルを作成して実行します。
この設定は TypeScript の同じ設定と共有されるため、ある言語でそれを変更すると、他の言語の設定も変更されます。
終了文
JavaScript/TypeScript では、ステートメントが改行で終わる場合、または中括弧で囲まれたステートメントが 1 つだけある場合、ステートメントを終了するためにセミコロンは必要ありません。 ただし、多くの場合、各ステートメントの後にセミコロンを使用することが推奨されます (たとえば、 この StackOverflow スレッド(英語)を参照してください)。 ReSharper を使うと、セミコロンを自動的に追加できます。
特定のファイル、プロジェクト、ソリューションのステートメントを終了するには、「フルクリーンアップ」プロファイルまたは ステートメントの終了 が JavaScript/TypeScript セクションで選択されている カスタムプロファイルを使用して、目的のスコープで コードクリーンアップを実行します。