【広告 No.01】

2015年5月16日土曜日

【Javascript】(小ネタ)知らないと嵌る原因となる変数の巻き上げ(hoisting)という概念

【はじめに】

情報収集中、とあるブログのコメント欄にて変数の巻き上げ(hoisting)というキーワードを見つけました。何ですか、それ?ということで調べてみました。




変数の巻き上げ(hoisting)とは

恐らくJavascript独特の、かつ重要な概念です。端的に説明すれば以下の様になります。

Javascriptでは関数内のどこで変数を宣言しても関数の先頭で宣言したこととみなされる

この概念を知らないと嵌る原因となる可能性が高いということです。ただ、これだけでは何故それだけのことで嵌る原因となるのか理解しづらいと思います。

この場で説明しても良いのですが、ANALOGICさんのブログ変数の巻き上げ(hoisting)についての説明がわかりやすくて参考になりましたので、紹介しておきます。気になる方は一度ご確認ください。

Javascriptは体系的に学習していないせいもあり、こういった基本的な概念が所々で抜けている可能性は大いにありますね。まだまだ学習すべきことはたくさんありますね。

予防策

至ってシンプルです。変数宣言を関数の先頭で行うこと。さらに補足するなら変数の宣言はその1回にまとめる。いわゆる単独varパターンというやつです。

以上、「変数の巻き上げ(hoisting)という概念」についての小ネタでした。

参考サイト