删除逗号并使其成为字符串?

时间:2017-06-16 06:29:52

标签: javascript encryption string-formatting caesar-cipher

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.")应解码为“快速布朗的狗在懒散的狐狸身上蹦蹦跳跳。”#34;但相反,我得到&#34; 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&#34;

2 个答案:

答案 0 :(得分:1)

尝试将strArr.toString()更改为strArr.join('')

这将数组中的字符串连接成一个字符串。 join('')中的空字符串确保没有逗号 - 每个项目都用空字符串分隔。

答案 1 :(得分:0)

而不是

strArr.push(newStr);

将strArr变为空字符串

strArr = "";

并将其更改为

strArr += newStr;

然后您可以在返回时删除.toString。