【JavaScript】Hoisiting(巻き上げ、ホイスティング)とは

JavaScript

Hoisting (巻き上げ、ホイスティング)とは

変数や関数の宣言がコードの先頭にあるようにすること(=巻き上げている)

メリット

定義する前に呼び出しても、問題なく実行されます(例:関数の定義よりも、実行を先に書く)。

以下のようなコードも実行可能です◎

findName("ゆず");

function findName(name) {
  console.log("あの人の名前は、" + name);
}

注意ポイント

関数を呼び出した後に、変数を含む定義や初期化を行うと、うまく実行されません。

例えば、以下のコードでは、console.log(name);はundefinedを返します宣言は巻き上げられるが、初期化は巻き上げられないからです。

console.log(name); 
var name; // 宣言
name = "ゆず"; // 初期化
タイトルとURLをコピーしました