旧それなりブログの跡地、画像やスタイルやJSなどが壊れてることがあります。

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の方が覚えることが少ないですよね。

同じやり方で upto とかも出来ますねっ!

後は、こんなのとか

String.prototype.toElement = function(){
return document.getElementById(this.valueOf());
};

こんな風に

var elem = "element_id".toElement();

HTML要素のオブジェクトを取れたりして。

なんて面白いんだ、このやろう!

"javascript ruby times"とかでググっても
このネタが見つからなかったので書いてみました。