まず、以下のような package 関数を作る。 function package(name) { package.__hash__ = package.__hash__ || {}; if (!package.__hash__.hasOwnProperty(name)) { package.__hash__[name] = { def: function(name, value) { return this[name] = value; } } } return package.__hash__[name] } で、こんな感じで使う // ここは hoge の名前空間 with (package('hoge')) { def('var0', 1); // 変数は def 関数で定義 def('var2', 2); alert(var0); // 1 alert(var2); // 2 } // ここは fuga の名前... 続きを読む
[PR]1位も狙える?ブログランキング出会いの広場
コメント
javascript
[!GTD::資料(いつか使う)]JavaScript でこんなパッケージ管理はどうか? - IT戦記
JavaScript でこんなパッケージ管理はどうか?
自前package関数とwithで名前空間を実現 / > withを使うと遅いけど
名前空間
withを使ってメソッドを変数にして局所化。javascriptに見えないけどすごいなあ。
関数で名前空間っぽく。
with を使う方法。
with、名前空間/パッケージ
開眼
関数1つとwith文でJavaScript上に名前空間を実現。グローバル変数の汚染を最小限に。パフォーマンス無視。
名前空間の試み
amachang++