Rubyをパクろう【timesの巻】
2007年7月20日
「いいところはパクる」
あのマッハ突きで有名な愚地克己も言ってました。
あのマッハ突きで有名な愚地克己も言ってました。
そんな訳で
よくRubyの素敵メソッドの例で挙げられるtimesメソッドを
javascriptでパクろうかなとそういう話です。
パクれ! コピれ! Make Method!
ということで、Numberオブジェクトを拡張してtimesメソッドを作り
Number.prototype.times = function(block){ for (var i = 1; i < this.valueOf() + 1; i++) { block(i); }; };
動作確認
(3).times(function(t){ alert(t + "!"); if (t === 3) alert("ダーーーッ!"); });
動く(XP-IE6とXP-FF2で)、OKKK!
まぁ、数値に括弧をつけないとダメだってのは、どうしょうもないすけど
その分JSの方が覚えることが少ないですよね。
その分JSの方が覚えることが少ないですよね。
同じやり方で upto とかも出来ますねっ!
後は、こんなのとか
String.prototype.toElement = function(){ return document.getElementById(this.valueOf()); };
こんな風に
var elem = "element_id".toElement();
HTML要素のオブジェクトを取れたりして。
なんて面白いんだ、このやろう!
"javascript ruby times"とかでググっても
このネタが見つからなかったので書いてみました。
このネタが見つからなかったので書いてみました。