Skip to content
← Back to rules

eslint/vars-on-top スタイル

何をするか

var 宣言が含まれるスコープのトップにすべての var 宣言が配置されることを強制します。

なぜ悪いのか

JavaScript では、var 宣言はその含むスコープのトップにホイスティングされます。var 宣言を明示的にトップに配置することで、変数のスコープが明確になり、コードの可読性と保守性が向上します。

このルールに対して 誤り の例:

js
function doSomething() {
  if (true) {
    var first = true;
  }
  var second;
}

function doSomethingElse() {
  for (var i = 0; i < 10; i++) {}
}

f();
var a;

class C {
  static {
    if (something) {
      var a = true;
    }
  }
  static {
    f();
    var a;
  }
}

このルールに対して 正しい 例:

js
function doSomething() {
  var first;
  var second;
  if (true) {
    first = true;
  }
}

function doSomethingElse() {
  var i;
  for (i = 0; i < 10; i++) {}
}

var a;
f();

class C {
  static {
    var a;
    if (something) {
      a = true;
    }
  }
  static {
    var a;
    f();
  }
}

使用方法

このルールを設定ファイルまたは CLI で 有効化 するには、次のようにします:

json
{
  "rules": {
    "vars-on-top": "error"
  }
}
bash
oxlint --deny vars-on-top

参照