JavaScriptのargumentsオブジェクトを使って文字列の複数置換の関数作ってみた


最近まで、JavaScriptのargumentsという機能を知らなかった自分。どうやら、関数内の引数を配列のように取得できる機能があるようです(参考:arguments – JavaScript | MDN)。

せっかくなので、何か作ってみようと思い、作ってみました。$の後に数値がついている文字列を、対応する引数の文字列に置換する関数です。

なにげに、replaceの使いかたに手間取った。全ての同じ文字列を置換したいのと、最初に$がつく文字列ということにしたら、なんだかややこしいことになってしまった。もっと簡単に全て置換する方法がないものか・・・。

for文中のカウンタを大きい方から減らしていってるのは、小さいほうから増やしていくと”$1″が”$10″にも引っかかってしまうからです。最初1~9までという制限にしようかと思ったのですが、よくよく考えたら大きい方から見ていくだけで解決することに気づきました。

コメントを残す

メールアドレスが公開されることはありません。