「JavaScript/変数」の版間の差分

削除された内容 追加された内容
396 行
=== 発展的な知識 ===
==== <code>var</code>の巻き上げ ====
加えて<code>var</code>で宣言された変数しては数内で使う場合に、値の代入は代入した場所で行われるが、宣言(および宣言に伴う代入)関数内のどこでしても関数の先頭でしたことになるという落とし穴が存在します。この挙動は<code>var</code>の巻き上げ(<code>var</code> hoisting)と呼ばれます。
 
<syntaxhighlight lang="JavaScript">
404 行
 
var dream = true;
consoledocument.logwrite(dream); // true
})();
</syntaxhighlight>
 
上記コードでは表示結果として、trueが表示されます。
 
なお、上記コードの関数は、無名関数と言われる種類の関数です。(無名関数について詳しくは『[[JavaScript/関数]]』で説明する。)
 
巻き上げが起きるのは、あくまで関数内での出来事であるので、関数を用いてない場所では、巻き上げは行われません。
 
 
446 ⟶ 452行目:
 
※ 検索用アンカー {{anchor|let}}
 
==== let ====
===== 基本 =====