美文网首页
free code camp,凯撒密码,运用String.cha

free code camp,凯撒密码,运用String.cha

作者: dirty_octopus | 来源:发表于2019-01-04 18:18 被阅读0次

    凯撒密码

    (让上帝的归上帝,凯撒的归凯撒)

    下面我们来介绍风靡全球的凯撒密码Caesar cipher,又叫移位密码。

    移位密码也就是密码中的字母会按照指定的数量来做移位。

    一个常见的案例就是ROT13密码,字母会移位13个位置。由'A' ↔ 'N', 'B' ↔ 'O',以此类推。

    写一个ROT13函数,实现输入加密字符串,输出解密字符串。

    所有的字母都是大写,不要转化任何非字母形式的字符(例如:空格,标点符号),遇到这些特殊字符,跳过它们。
    我的解法:

     function rot13(str){
        var a=[];
        for (var i=0,l=str.length;i<l;i++){       
            var m=str.charCodeAt(i);
            var n=String.fromCharCode(m);
            var k=String.fromCharCode(m+13);
            var j=String.fromCharCode(65+(12-(90-m)));
            if(m<65){
              a.push(n);
            }else if(m>=65&&m<=77){
              a.push(k);
            }else if(m>77){
              a.push(j);
            }
        }
        var b=a.join('');
        console.log(b);  
      }
      rot13("SERR CVMMN!");
    

    相关文章

      网友评论

          本文标题:free code camp,凯撒密码,运用String.cha

          本文链接:https://www.haomeiwen.com/subject/yemkrqtx.html