タグ: let

  • ESLintで特定の箇所だけvarを許可する方法

    背景

    JavaScriptでシングルトンを実装していた際に、どうしてもvarを使用する必要がありました。

    プロジェクトの設定でESLintを利用しているため、varを使うと以下のようなエラーが発生しました。

    7:3  Error: Unexpected var, use let or const instead.  no-var

    普段はletconstを使用するのが推奨されていますが、特別なケースとしてシングルトン実装などでスコープを明示的に調整するため、あえてvarが必要になることがあります。

    特定箇所だけルールを無効化する方法

    ESLintには、一時的に特定のルールを無効化するコメントがあります。

    単一行で許可する場合

    varを許可したい行の直前に次のコメントを追加します。

    // eslint-disable-next-line no-var
    var singletonInstance = null;

    複数行で許可する場合

    複数行にわたり許可したい場合は、以下のように囲みます。

    /* eslint-disable no-var */
    var singletonInstance = null;
    var anotherVar = 123;
    /* eslint-enable no-var */

    注意点

    • 原則として、varを利用するのは避け、可能な限りletまたはconstを利用しましょう。
    • 特定のケースでのみ、意図を明確にコメントに残したうえで許可するのがベストプラクティスです。

    以上の方法で、ESLintルールを柔軟に適用しつつ、特殊な実装にも対応できます。