Advertisement
nikolayneykov

Untitled

May 27th, 2019
103
0
Never
Not a member of Pastebin yet? Sign Up, it unlocks many cool features!
  1. function solve () {
  2.   let input = document.querySelector('#input')
  3.   let output = document.querySelector('#output p')
  4.   let [filterBtn, sortBtn, rotateBtn, getBtn] = document.querySelectorAll(
  5.     'button'
  6.   )
  7.   filterBtn.addEventListener('click', filter)
  8.   sortBtn.addEventListener('click', sort)
  9.   rotateBtn.addEventListener('click', rotate)
  10.   getBtn.addEventListener('click', get)
  11.  
  12.   function filter () {
  13.     let text = input.value
  14.     let criteria = document.querySelector('#filterSecondaryCmd').value
  15.     let pos = document.querySelector('#filterPosition').value - 1
  16.  
  17.     if (criteria === 'uppercase') {
  18.       output.textContent += text.match(/[A-Z]/g)[pos]
  19.     } else if (criteria === 'lowercase') {
  20.       output.textContent += text.match(/[a-z]/g)[pos]
  21.     } else if (criteria === 'nums') {
  22.       output.textContent += text.match(/\d/g)[pos]
  23.     }
  24.   }
  25.  
  26.   function sort () {
  27.     let text = input.value.split('')
  28.     let criteria = document.querySelector('#sortSecondaryCmd').value
  29.     let pos = document.querySelector('#sortPosition').value - 1
  30.  
  31.     if (criteria === 'A') {
  32.       output.textContent += text.sort((a, b) => a.localeCompare(b))[pos]
  33.     } else if (criteria === 'Z') {
  34.       output.textContent += text.sort((a, b) => b.localeCompare(a))[pos]
  35.     }
  36.   }
  37.  
  38.   function rotate () {
  39.     let text = input.value.split('')
  40.     let rotations = +document.querySelector('#rotateSecondaryCmd').value
  41.     let pos = document.querySelector('#rotatePosition').value - 1
  42.  
  43.     while (rotations > 0) {
  44.       text.unshift(text.pop())
  45.       rotations--
  46.     }
  47.  
  48.     console.log(text)
  49.     output.textContent += text[pos]
  50.   }
  51.  
  52.   function get () {
  53.     let pos = document.querySelector('#getPosition').value - 1
  54.     output.textContent += input.value[pos]
  55.   }
  56. }
Advertisement
Add Comment
Please, Sign In to add comment
Advertisement