JavaScriptの変数のスコープについて学ぶ

白石俊平(あゆた)
2008-05-23 18:00:00
  • このエントリーをはてなブックマークに追加

前回までのおさらいと今回のあらすじ

 JavaScriptをより深く知りたい人のための当連載、ご無沙汰しておりましたが、読者の皆様はいかがお過ごしでしたでしょうか。

前回は、JavaScriptの関数について詳しく学びました。

 今回と次回でJavaScriptにおける変数のスコープについて学びます。今回は、スコープについての基本的な事柄を軽く復習するとしましょう。

変数のスコープは大きく分けて二種類

 JavaScriptにおける変数のスコープは、大きく分けて二種類あります。それはグローバル変数ローカル変数です。

 多くのプログラミング言語にも同様の区別がありますので、感覚的に理解している方も多いのではないでしょうか。しかし、詳しく調べてみるとJavaScriptにおける変数のスコープは、他の言語とはひと味違います。

ローカル変数

 ローカル変数というのは、「宣言した関数内でのみ利用可能な変数」のことです。変数の宣言方法は「関数内で、varキーワードに続けて変数を宣言する」というものです。

function func() {
  // ローカル変数
  var localVar = "local";
  // ローカル関数
  function localFunc() {
    return "localFunc";
  }
}
alert(localVar); // 結果はエラー。ローカル変数にはアクセスできない。
alert(localFunc()); // 結果はエラー。ローカル関数にはアクセスできない。

 また、上のサンプルコードでは「ローカル関数」も定義してみました。関数内で関数を宣言すると、ローカル変数のスコープに含まれます。

グローバル変数

 プログラム全体で共有する変数のことです。JavaScriptでグローバル変数を宣言するには、つぎの二種類の方法があります。

  • コメント(4件)
#1 uchima   2008-07-24 09:37:29
早く続きが読みたいです。せめてDojoコードを読む手前までは連載を続けてほしい。
#2 tomita   2008-07-24 16:05:05
builder編集部 冨田です。

ご要望、ありがとうございます。改めて白石俊平さんに連絡したところ、
「頑張ります。今週土日に書きますので!」とのことでした。

お約束は守ってくださる方ですので、入稿次第、掲載します。
ではでは。
#3 大野晋一   2008-07-24 16:15:31
担当の大野です。間が空いてしまっていて恐縮です。来週に掲載予定です。こうご期待!
#4 hina   2012-07-05 16:38:02
色々と謎が解けました

本当にありがとうございます。

白石俊平さんのJavaScriptの本が出てないのが残念です。
  • 新着記事
  • 特集
  • ブログ