1
问题是给定的字符串,我必须将给定数字的每个字母移位。Javascript - 从n个位置移动字符串的字符
例如,
Encrypt(‘ABC’, 4) should return "EFG"
Encrypt("AB C", 2) Should equal to “CD E”
Encrypt("ABC DEF", 2) Should equal to “CDE FGH”
这是解决方案,我已经想出;
function encrypt(str, index) {
var encryptedstr = '';
var charCode = 0;
for (i = 0; i < str.length; i++) {
charCode = str.charCodeAt(i);
if (charCode >= 65 && charCode <= 77){
encryptedstr += String.fromCharCode(charCode + index);
}else{
encryptedstr += String.fromCharCode(charCode);
}
}
return encryptedstr;
}
这对给定的输入工作正常。但它总是告诉我“答案应该对任何给定的输入有效”我在这里做错了什么?
我改变了下面的代码,但它也给我同样的错误。
for (var i = 0; i < str.length; i++)
{
if(str[i] === " ")
{
encryptedstr += " ";
}else{
charCode = (str[i].charCodeAt()) + index;
encryptedstr += String.fromCharCode(charCode);
}
}
你给出关于种输入你应该能够应付任何信息?小写字母怎么样? – Hamms
*“但它一直告诉我”*谁或什么是*它*?并为哪些输入失败? –
例如,您可能需要将'Z'移至'D'。 – Ryan