最終更新:2018-01-08 (月) 06:01:55 (2272d)
巻き上げ
Top / 巻き上げ
JavaScript
JavaScript/var
- varによる変数宣言は、暗黙的に宣言部分がもっと近い関数またはグローバルスコープの先頭に巻き上げられ、代入部分はそのままの位置に残るという特殊な動作をします。
- 巻き上げはブロックスコープを無視してもっと近い関数スコープ?またはグローバルスコープ?に変数を紐付けます。
JavaScript/function文
- function文?もvarと同様にもっと近い関数またはグローバルスコープの先頭に巻き上げされます。
- JavaScript/関数式も巻き上げられるので注意が必要。
// `hello`変数は巻き上げされ、暗黙的に`undefined`となる hello(); // => TypeError: hello is not a function // `hello`変数へ関数を代入している var hello = function(){ return "Hello"; };