删除逗号并将其设为字符串?
Remove commas and make it a string?
function Cipher(str) {
var strArr = [];
for(i=0;i<str.length+1;i++){
var unicode = str.charCodeAt(i);
var ciphUnicode;
var newStr = String.fromCharCode(ciphUnicode);
if(unicode>=65 && unicode <=77 )
ciphUnicode = unicode + 13;
else if (unicode>=78 && unicode <=90 && unicode!==" ")
ciphUnicode = unicode - 13;
else if (unicode === 32)
ciphUnicode = unicode;
strArr.push(newStr);
}
return strArr.toString();
}
Cipher("GUR DHVPX OEBJA QBT WHZCRQ BIRE GUR YNML SBK.")
应该解码为 "THE QUICK BROWN DOG JUMPED OVER THE LAZY FOX." 但我却得到 "T,H,E, ,Q,U,I,C,K, ,B,R,O,W,N, ,D,O,G, ,J,U,M,P,E,D, ,O,V,E,R, ,T,H,E, ,L,A,Z,Y, ,F,O,X,X"
尝试将 strArr.toString()
更改为 strArr.join('')
。
这会将数组中的字符串连接成一个字符串。 join('')
中的空字符串确保没有逗号 - 每个项目都由一个空字符串分隔。
而不是
strArr.push(newStr);
将strArr设为空字符串
strArr = "";
并将其更改为
strArr += newStr;
然后您可以删除 return 上的 .toString。
function Cipher(str) {
var strArr = [];
for(i=0;i<str.length+1;i++){
var unicode = str.charCodeAt(i);
var ciphUnicode;
var newStr = String.fromCharCode(ciphUnicode);
if(unicode>=65 && unicode <=77 )
ciphUnicode = unicode + 13;
else if (unicode>=78 && unicode <=90 && unicode!==" ")
ciphUnicode = unicode - 13;
else if (unicode === 32)
ciphUnicode = unicode;
strArr.push(newStr);
}
return strArr.toString();
}
Cipher("GUR DHVPX OEBJA QBT WHZCRQ BIRE GUR YNML SBK.")
应该解码为 "THE QUICK BROWN DOG JUMPED OVER THE LAZY FOX." 但我却得到 "T,H,E, ,Q,U,I,C,K, ,B,R,O,W,N, ,D,O,G, ,J,U,M,P,E,D, ,O,V,E,R, ,T,H,E, ,L,A,Z,Y, ,F,O,X,X"
尝试将 strArr.toString()
更改为 strArr.join('')
。
这会将数组中的字符串连接成一个字符串。 join('')
中的空字符串确保没有逗号 - 每个项目都由一个空字符串分隔。
而不是
strArr.push(newStr);
将strArr设为空字符串
strArr = "";
并将其更改为
strArr += newStr;
然后您可以删除 return 上的 .toString。