コピペで使える JavaScript逆引きリファレンス

JavaScript/jQuery開発時に、こそっとお使いください。

JavaScript

[JavaScript] ブロックスコープを定義する

投稿日:2016年12月10日 更新日:

JavaScriptでブロックスコープを定義する方法です。

ECMAScript5以前の環境では即時関数を使用しますが、
ECMAScript6からブロックスコープが簡単に定義できるようになりました。

ブロックスコープを定義する(ECMAScript6以降)

ECMAScript6以降でブロックスコープを定義するには、「{」、「}」で囲うだけです。

例)ブロックスコープを定義するサンプル

(結果)
100 200 100

解説

  • ECMAScript6以降ではグローバル変数/ローカル変数を区別し、グローバル変数の定義はvar、ローカル変数の定義はletを使用します。
  • なので、ブロック内でのみ有効な変数(ローカル変数)を定義する場合はletで定義します。
  • ブロック内でvarで変数定義すると、グローバル変数を定義したことになります。

ブロックスコープを定義する(ECMAScript5以前)

ECMAScript5以前の環境でブロックスコープを定義するには、即時関数を使用します。

例)ブロックスコープを定義するサンプル

(結果)
100 200 100

解説

  • ECMAScript5以前ではグローバル変数/ローカル変数を区別せず、変数定義はすべてvarで行います。
  • 即時関数内でvar定義しても即時関数外の変数には影響しません。

スポンサーリンク

スポンサーリンク

-JavaScript
-

執筆者:


comment

メールアドレスが公開されることはありません。 * が付いている欄は必須項目です

関連記事

[JavaScript] 無名関数を使用する

無名関数とは、読んで字のごとくでFunction名が定義されていない関数です。 無名関数は関数リテラルを定義する場合や、 ...

[JavaScript] ブラウザの「お気に入りの追加」ボタンを実装する

ブラウザの「お気に入りの追加」ボタンを実装するには、 window.external.AddFavoriteを使用します ...

[JavaScript] パスワード用にランダムな文字列を生成する

ランダムな文字列を作成するサンプルです。 サンプルソース 例)半角英数字と一部記号からランダムな8桁文字列を生成する [ ...

[JavaScript] 要素をHTML形式でコンソールに出力する(console.dirxml)

要素をHTML形式でコンソールに出力したい場合は、console.dirxmlを使用します。 サンプルソース 例)要素( ...

[JavaScript] オートコンプリート付のテキストボックスを生成する

オートコンプリート付のテキストボックスを生成するサンプルです。 サンプルソース 例)オートコンプリート付のテキストボック ...

スポンサーリンク