2008年05月22日 02:30 [Edit]

javascript - String.prototype.tr() released

現代のJavaScriptにはperlのm//相当のString.match()も、s///相当のString.replace()も存在しますが、なぜかString.tr()がなかったので作りました。


String:
tr args:
stdout:
stderr:

きっかけは、こちら。

404 Blog Not Found:javascript - 勝手に添削 - textareaの高さを自動調節
    var lines = 1;
    for (var i = 0, l = value.length; i < l; i++){
        if (value.charAt(i) == '\n') lines++;
     }

まあ行数を数えているのですが、コメント欄他のstr.split(/\n/).lengthはかっこいいけどoverkillだし、perlなら$n = ($str =~ tr/\n/\n/);というちょっぱやなコードが使えるのにというのがそのきっかけです。

sオプションはサポートしていましせんが、cとdはサポートしています。String.countChar()は、JavaScriptでは文字列がimmutableなので上のような例が使えないので別に用意したものです。

CodeReposに上げておいたので、添削きぼんぬ。

Dan the JavaScripter

See Also:

  

この記事へのトラックバックURL

この記事へのトラックバック
行数を数えているのですが、コメント欄他のstr.split(/\n/).lengthはかっこいいけどoverkill 404 Blog Not Found:javascript - String.prototype.tr() released 本当でしょうか? 実際に試してみましょう。変
行数の数え方【Days on the Moon】at 2008年05月23日 11:59
この記事へのコメント
javascriptの関数名はjavaに近いからperl風にtrと略すよりもしっかりとtranslateとしてあげるほうが適切なような気がしなくもない。
Posted by 通りすがり at 2008年05月22日 10:47