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"とかでググっても
このネタが見つからなかったので書いてみました。
このネタが見つからなかったので書いてみました。