我需要刷新我的JavaScript,因为它是我最弱的语言,所以我想“嘿,让一个简单的'翻译'程序来测试我的技能。那么我能够通过一种方式进行翻译(我还没有对人们输入的东西进行非翻译),但无论如何,它的作用方式是由交换机内部的一系列情况。我想知道如果有反正我可以简化代码而不是有一百万个开关情况。谢谢你是我的代码。简化长切换语句
function main() {
var get = prompt("Enter what you would like to encode!","At the current time decoding is still a WIP").toLowerCase();
var ina = [...get];
for(i = 0; i < ina.length; i++) {
switch(ina[i]) {
case "a":
ina[i] = "z";
break;
case "b":
ina[i] = "y";
break;
case "c":
ina[i] = "x";
break;
case "d":
ina[i] = "w";
break;
case "e":
ina[i] = "v";
break;
case "f":
ina[i] = "u";
break;
case "g":
ina[i] = "t";
break;
case "h":
ina[i] = "s";
break;
case "i":
ina[i] = "r";
break;
case "j":
ina[i] = "q";
break;
case "k":
ina[i] = "p";
break;
case "l":
ina[i] = "o";
break;
case "m":
ina[i] = "n";
break;
case "n":
ina[i] = "m";
break;
case "o":
ina[i] = "l";
break;
case "p":
ina[i] = "k";
break;
case "q":
ina[i] = "j";
break;
case "r":
ina[i] = "i";
break;
case "s":
ina[i] = "h";
break;
case "t":
ina[i] = "g";
break;
case "u":
ina[i] = "f";
break;
case "v":
ina[i] = "e";
break;
case "w":
ina[i] = "d";
break;
case "x":
ina[i] = "c";
break;
case "y":
ina[i] = "b";
break;
case "z":
ina[i] = "a";
break;
default:
ina[i] = ina[i]
};
};
var outa = ina.join("");
document.getElementById("output").innerHTML = outa;
};
这就要看,有没有consistenc ÿ?例如,你似乎正在向后翻译相同的字母,这可能会更容易处理一个字符数组,并使用长度等,但对于其他模式,可能无法正常工作,所以你只想为这个模式提供一些东西,或者一些更简单的方法来编写一个通用的*(实际上没有)*。 – adeneo
如果您有需要改进的工作代码,也可以在http://codereview.stackexchange.com上询问。他们将帮助您改进代码的各个方面。 – tsleyson