File tree Expand file tree Collapse file tree 1 file changed +1
-39
lines changed Expand file tree Collapse file tree 1 file changed +1
-39
lines changed Original file line number Diff line number Diff line change 1
1
2
2
const caesar = function ( msg , key ) {
3
- let codedMsg = '' ;
4
- for ( let i = 0 ; i < msg . length ; i ++ ) {
5
- let code = msg . charCodeAt ( i ) ;
6
- let newLetter = '' ;
7
-
8
- if ( code >= 65 && code <= 90 ) {
9
- if ( code + key > 90 ) {
10
- code -= 65 ;
11
- code = ( ( code + key ) % 26 ) ;
12
- code += 65 ;
13
- codedMsg += String . fromCharCode ( code ) ;
14
- } else {
15
- newLetter = String . fromCharCode ( code + key ) ;
16
- codedMsg += newLetter ;
17
- }
18
- } else if ( code >= 97 && code <= 122 ) {
19
- if ( code + key > 122 ) {
20
- code -= 122 ;
21
- code = ( ( code + key ) % 26 ) ;
22
- code += 122 ;
23
- codedMsg += String . fromCharCode ( code ) ;
24
- } else {
25
- newLetter = String . fromCharCode ( code + key ) ;
26
- codedMsg += newLetter ;
27
- }
28
-
29
- } else {
30
- codedMsg += msg [ i ] ;
31
-
32
- }
33
-
34
- const codeSet = code => ( code < 97 ? 65 : 97 ) ;
35
- const mod = ( n , m ) => ( n % m + m ) % m ;
36
- const shiftChar = ( char , shift ) => {
37
- const code = char . charCodeAt ( ) ;
38
- if ( ( code >= 65 && code <= 90 ) || ( code >= 97 && code <= 122 ) ) {
39
- return String . fromCharCode (
40
- mod ( code + shift - codeSet ( code ) , 26 ) + codeSet ( code )
41
- } return codedMsg ;
3
+
42
4
}
43
5
44
6
You can’t perform that action at this time.
0 commit comments