何度も何度も間違えるので書いておく。
変数を最初に使う時(宣言時)に
関数の外で var を使っても省略しても ・・・グローバル変数
関数内で var を使う ・・・ローカル変数
関数内で var を省略 ・・・グローバル変数
var aaa = 10; /* グローバル変数 */ bbb = 20; /* グローバル変数 */ function xxx() { var aaa = 30; /* ローカル変数 */ bbb += aaa; /* bbb:グローバル変数、aaa:ローカル変数 */ } document.writeln(aaa); /* 結果 10 */ document.writeln(bbb); /* 結果 50 */
だからって、「グローバル変数には var を付けない」という覚え方はしちゃダメ!
- 重複しない変数名にすること。
- 変数を最初に使う宣言時には必ず var を付け、再利用時に var を外して使えばよい。
参考サイト:http://js.tank.jp/javascript/post.html
