JSで個人的に忘れがちなことまとめ
2013年11月19日
JSのあれこれ
一個目の疑問:JSでローカルスコープを作るときのあれ
/* bigscope */ (function($, window, document, undefined){ // your codes here })(jQuery, this, this.document);
ローカルスコープとは
スコープとは変数の有効範囲のことでプログラムのどの位置から参照できるかを決める概念である。
Javascriptには2つのスコープがある
グローバル変数とローカル変数の2種類がある。
グローバル変数は関数の外-トップレベルで宣言した変数でプログラム全体から参照可能
ローカル変数は関数の中で宣言された変数、関数の仮引数のことでその関数の中のみ参照可能
で!
もとの上のスクリプトに戻ります。
- まずはundefined、これはundefinedはJSないで上書き可能でこうやって渡されない引数を使えばこのfunction内で確実にundefinedがundefinedなことを保証できる。
- $=jQueryは$がjQueryであることを保証させる
- window, documentはJSのmifierのためこれをやると関数内でwindow, documentという文字を一文字に置き換えるので少し軽くなる
- 加えて、window, documentはわずかにパフォーマンスが教場する
とのこと・・・