August 2009
9 posts
3 tags
処理した結果をプールするライブラリ「pool.js」を作りました
yoko’s pool-js at master - GitHub JSを書いている時によくあるキャッシュ処理を楽にします。 一度目の結果をキャッシュして二度目以降はその値を返す sync = function() { var md5 = Pool('md5', function() { return MD5('一度だけ実行'); }); alert(md5); }; sync(); sync(); // キャッシュした値が返る Ajaxの結果をキャッシュして二度目からはリクエストしない async = function() { Pool('req', function(f) { $.get('./', f); }, function(data) { ...
Aug 25th
2 notes
2 tags
今日のIE
6です。 delete window.foo出来ない このオブジェクトではサポートされていない操作です。とかなんとか。IE以外のブラウザでは通る。 window.foo = undefined; で対処出来る。特に問題もないと思う。 関数リテラルに付けた名前 !== arguments.callee 具体的には // 関数リテラルに名前を付けてarguments.calleeの代わりにする // 速度が少し上がるみたい equal = (function f() { var callee = arguments.callee; return function() { // IEではfalse、それ以外のブラウザではtrue console.log(f === callee); ...
Aug 24th
2 tags
git-svnでブランチ管理
まず取ってくる。 % git svn clone -s http://example.com/svn -sは--stdlayout。trunk、branches、tagsで分かれてるリポジトリに使う。ディレクトリ構成が違う場合は-T trunk -b branches -t tags。 % git branch -r branch_foo branch_bar tags/tag_baz trunk でどう対応しているかが見れる。 % git checkout -b local_branch_foo branch_foo でローカルにブランチを作成。自動的に作ったブランチに移動してる。 % git commit ローカルブランチにコミット。 % git svn dcommit branch_gooブランチにコミット。 ...
Aug 18th
Aug 14th
1 tag
valueOfが役に立つ場面
滅多に使わないのでvalueOfをよく知らなかったー。 valueOfはそのオブジェクトをプリミティブな値に変換出来る場合は変換、出来ない場合はそのままオブジェクトを返してくれます。変換出来るのはNumber、String、Boolean辺り。 var num = 123; alert(typeof num); // number var num = new Number(123); alert(typeof num); // object alert(typeof num.valueOf()); // number Stringの場合が便利で、String#valueOfはString#toStringと同じ働きをするのでそのまま変換が出来ます:) var str = new String('hello!'); alert(typeof str); //...
Aug 11th
1 tag
gitで空ディレクトリを追加する
.gitignoreを作ってaddするのが定石らしい。もー。 $ mkdir kana1 $ touch kana1/.gitignore $ git add kana1 @basix、@kana1ありがとうー。
Aug 10th
16 notes
1 tag
配列を指定数ずつ分割した新しい配列にするメソッド
重い処理を分割する時に使おうと思って作りました。 [1,2,3,4,5].split(3); // [[1,2,3], [4,5]] みたいな処理をします。いい名前が思い付かなかった・・。 http://gist.github.com/160491
Aug 2nd