Advertisement
Guest User

Untitled

a guest
Aug 31st, 2016
68
0
Never
Not a member of Pastebin yet? Sign Up, it unlocks many cool features!
text 0.85 KB | None | 0 0
  1.  
  2. const a = 'abcdefghijklmnopqrstuvwxyz'
  3.  
  4. const ceasar = (str, rot) => {
  5. return str.split('').map((letter) => {
  6. if (a.indexOf(letter.toLowerCase()) < 0) {
  7. return ' '
  8. }
  9. let rotLetter = a[(a.indexOf(letter.toLowerCase()) + rot) % a.length]
  10. return letter.toLowerCase() === letter ? rotLetter : rotLetter.toUpperCase()
  11. }).join('')
  12. }
  13.  
  14. const vigenere = (str, key, direction) => {
  15. key = key.replace(/[ ,\?!]/g, '')
  16. let i = 0
  17. return str.split('').map((letter) => {
  18. if (a.indexOf(letter.toLowerCase()) >= 0) {
  19. const keyLetterInd = a.indexOf(key[i % key.length].toLowerCase())
  20. const index = (a.indexOf(letter.toLowerCase()) + (direction ? keyLetterInd : a.length - keyLetterInd)) % a.length
  21. i++
  22. return letter.toLowerCase() === letter ? a[index] : a[index].toUpperCase()
  23. } else {
  24. return letter
  25. }
  26. }).join('')
  27. }
Advertisement
Add Comment
Please, Sign In to add comment
Advertisement