替换javascript中的某些字符

Ind*_*ial 5 javascript string replace str-replace

来自PHP背景,我有点被宠坏了str_replace,你可以传递一系列干草堆和针.

我还没有在Javascript中看到过这样的功能,但是我已经设法完成了工作,尽管很难看,但下面显示的代码:

return myString.replace(" ", "-").replace("&", ",");

然而,由于我需要用另一个角色替换某些角色,我相信有更好的方法可以实现这一点 - 无论是性能还是更漂亮.

那么我该怎么做呢?

Ric*_*ers 5

你可以用这个:

    var str = "How are you doing?";
    var replace = new Array(" ", "[\?]", "\!", "\%", "\&");
    var by = new Array("-", "", "", "", "and");
    for (var i=0; i<replace.length; i++) {
        str = str.replace(new RegExp(replace[i], "g"), by[i]);
    }
Run Code Online (Sandbox Code Playgroud)

把它放到一个函数中:

function str_replace(replace, by, str) {
    for (var i=0; i<replace.length; i++) {
        str = str.replace(new RegExp(replace[i], "g"), by[i]);
    }
    return str;
}
Run Code Online (Sandbox Code Playgroud)

用法示例小提琴:http://jsfiddle.net/rtLKr/