0

HTMLを含むJavascriptで文字列を作成しています。

今、私は次のようなことをしています:

var filter = "";
filter = util.getTemplate( "tmp_filter", temps );
filter = filter.replace( 'id="tmp_filter"','');
if (dyn.table.i18n) {
    filter = filter.replace(util.regex.re_text, dyn.filter.clear_tx);
} else {
    filter = filter.replace('data-i18n="[title]tmp_text"', 'title="'+dyn.filter.clear_tx+'" ');
    filter = filter.replace('data-i18n="tmp_text">','>'+dyn.filter.clear_tx);
}
filter = filter.replace(util.regex.re_theme, dyn.filter.theme);
filter = filter.replace(util.regex.re_icon, dyn.filter.icon);
filter = filter.replace(util.regex.re_iconpos, dyn.filter.iconpos);
filter = filter.replace('class="ui-listview-filter ', 'class="ui-listview-filter '+ dyn.custom_classes[0]+' ');

テンプレートを取得し、すべてのプレースホルダーを で指定されたデータに置き換えますdyn

これは機能しますが、非常に多くの置換呼び出しが発生します。SQL では、このような置換呼び出しをネストできます

SELECT LEN(REPLACE(REPLACE(address, ' CA', ''), ' NY', '')) FROM Tbl

質問: Javascript で複数の呼び出し
を行うためのより良い方法はありますか? replaceコードの長さは気にならないのですが、ちょっと不安ですfilter = filter.replace。より良い方法があるかどうか疑問に思っていますか?

ありがとう!

4

1 に答える 1

1

すべての置換をチェーンできます

于 2013-02-08T06:56:02.773 に答える