SHARE
TWEET

Untitled

a guest May 20th, 2019 73 Never
Not a member of Pastebin yet? Sign Up, it unlocks many cool features!
  1. function solve() {
  2.  
  3.     let regex = /^(\d+|\d+\.\d+) [/\-+x] (\d+|\d+\.\d+)$/g;
  4.  
  5.     let expressionOutput = document.querySelector('#expressionOutput');
  6.     let resultOutput = document.querySelector('#resultOutput');
  7.     let button = document.querySelector('.top .clear');
  8.     let keys = Array.from(document.querySelector('.keys').children);
  9.  
  10.     console.log(keys);
  11.  
  12.     button.addEventListener('click', clear);
  13.  
  14.     keys.forEach(x => {
  15.         x.addEventListener('click', function (e) {
  16.             let key = e.target;
  17.  
  18.             if (key.textContent === '=') {
  19.  
  20.                 let text = expressionOutput.textContent;
  21.                 if (validate(text)){
  22.                     let first = text.indexOf(' ');
  23.                     let second = text.lastIndexOf(' ');
  24.                     let left = text.slice(0,first);
  25.                     let right = text.slice(second + 1);
  26.                     let operator = text[second - 1];
  27.                     console.log(left);
  28.                     console.log(right);
  29.                     console.log(operator);
  30.  
  31.                     // resultOutput.textContent = ;
  32.                 }
  33.                 else {
  34.                     resultOutput.textContent = 'NaN';
  35.                 }
  36.             }
  37.             else if (key.textContent === '*' || key.textContent === '-' || key.textContent === '+' || key.textContent === '/') {
  38.                 expressionOutput.textContent += ' ' + key.textContent + ' ';
  39.             }
  40.             else {
  41.                 expressionOutput.textContent += key.textContent;
  42.             }
  43.         })
  44.     });
  45.  
  46.     function validate(text) {
  47.  
  48.         if (regex.test(text)){
  49.             return true;
  50.         }
  51.        return false;
  52.     }
  53.  
  54.     function clear() {
  55.         document.getElementById('resultOutput').textContent = '';
  56.         document.getElementById('expressionOutput').textContent = '';
  57.     }
  58. }
RAW Paste Data
We use cookies for various purposes including analytics. By continuing to use Pastebin, you agree to our use of cookies as described in the Cookies Policy. OK, I Understand
 
Top