JavaScript での大規模開発では
で、こんな記述ルールはどうだろう
window['http://d.hatena.ne.jp/amachang/']={}; // URI (function(){with(this){ // ここにコードを書く }}).apply(window['http://d.hatena.ne.jp/amachang/']); // URI
例えば
window['http://d.hatena.ne.jp/amachang/']={}; (function(){with(this){ var hoge = 'hoge'; // このスコープ内で共有するシンボル this.fuga = 'fuga'; // 同じ名前空間で共有するシンボル window.piyo = 'piyo'; // グローバルで共有するシンボル alert(hoge); // hoge alert(fuga); // fuga alert(piyo); // piyo }}).apply(window['http://d.hatena.ne.jp/amachang/']); (function(){with(this){ //alert(hoge); // (Error) alert(fuga); // fuga alert(piyo); // piyo }}).apply(window['http://d.hatena.ne.jp/amachang/']); alert(piyo); // piyo
*1:すべての関数開始時に行われる