作为一种实践,我正在尝试创建一个假的“翻译器”,使用.replace将英语转换为字母的混合版本,但是我遇到了一个问题:.replace操作替换了先前已经被替换的字母。
有没有办法防止代码重新替换已经被替换的字母?
我的HTML:
任何帮助都将不胜感激!
<button onclick="Function()">click</button>
<p id="let">a b c d e f g h i j k l m n o p q r s t u v w x y z</p>
<p id="demor"></p>
我的JavaScript:
function Function() {
var str = document.getElementById("let").innerHTML;
var txt = str.replace(/a/g,"x").replace(/b/g,"b").replace(/c/g,"c").replace(/d/g,"d").replace(/e/g,"a").replace(/f/g,"k").replace(/g/g,"s").replace(/h/g,"r").replace(/i/g,"e").replace(/j/g,"i").replace(/k/g,"d").replace(/l/g,"r").replace(/m/g,"z").replace(/n/g,"m").replace(/o/g,"s").replace(/p/g,"v").replace(/q/g,"p").replace(/r/g,"r").replace(/s/g,"k").replace(/t/g,"s").replace(/u/g,"i").replace(/v/g,"q").replace(/w/g,"v").replace(/x/g,"x").replace(/y/g,"e").replace(/z/g,"b");
document.getElementById("demor").innerHTML = txt;
}
任何帮助都将不胜感激!
.replace
。 :s - Jeremy Jackson