我必须反转字符串的值,一个一个地改变。
例子:
var x = "my string";
x = someCrazyFunction(x, 'm', 'n');
那么“ m y stri n g”的 x 将变为“ n y stri m g”
如何做到这一点?
我必须反转字符串的值,一个一个地改变。
例子:
var x = "my string";
x = someCrazyFunction(x, 'm', 'n');
那么“ m y stri n g”的 x 将变为“ n y stri m g”
如何做到这一点?
function someCrazyFunction(str, ch1, ch2) {
return str.replace(/./g, function(x) {
return (x == ch1) ? ch2 : (x == ch2) ? ch1 : x;
});
}
x.split('').map(function(c) {return c=='n'?'m':c=='m'?'n':c; }).join('');
或者,如果您想使用一个对象进行重新映射(对于任何数量的疯狂):
x.split('').map(function(c) {var _={n:'m',m:'n'}; return c in _?_[c] : c;}).join('')