サイ本JavaScriptの変数スコープがJavaと結構違って厄介。備忘録として!まず、JavaScriptにはブロックレベルのスコープがありません。ある関数で宣言された変数は、どのブロックで宣言されたにかかわらず関数全体で有効になる。}f();最初のalertは、「global」と表示されると思いませんか?(JavaとかC使いの人に向けての問いかけ)上で説明したように関数で宣言した変数は関数全体で有効なので「undefined」と表示されるのです。2回目のalertは、「local」と表示されます。次のように書いたのと同じ意味になります。alert(scope);}f();変数が後に宣言してあること認識してるなら初期化してくれればいいのにな〜って思った今日この頃。ま、そうしちゃうとどこで変数宣言したかわからないから探すの大変になっちゃいますけど。(1)はてなブログをはじめよう!b1a9idさんは、はてなブログを使っています。ブログを報告する引用をストックしましたストック一覧を見る閉じる引用するにはまずログインしてくださいログイン閉じる引用をストックできませんでした。再度お試しください閉じる限定公開記事のため引用できません。