名前空間を汚染しないライブラリを作りたい
会社の人たちと先日昼飯を食べているときに、JavaScriptでいかに名前空間を汚染しないか、とかいう話をした。特に、自分のコントロール下にないページで読み込まれるJavaScript(ライブラリとかブログパーツとか)は、名前空間を汚染したくない。
で、そのときに汚染してるけど気づかれにくいというのはどうか、という話もした。
Array.prototype.slice.$ = function(id){ if( !id ) return; return document.getElementById(id); }
おお、まさかそんなところに隠れているとは!
使うときは以下のような感じで。
var d = [].slice.$('div1');
使うときに配列を生成しているあたりが素敵だ。