Advertisement
Not a member of Pastebin yet?
Sign Up,
it unlocks many cool features!
- function solve() {
- let buttons = Array.from(document.getElementsByTagName('button'));
- let clearButton = buttons.splice(0, 1);
- let firstNumber = '';
- let secondNumber = '';
- let isItFirstNumber = true;
- let operator = '';
- let result = 0;
- buttons.forEach(button => {
- button.addEventListener('click', calculate)
- });
- clearButton[0].addEventListener('click', clear);
- function calculate(e) {
- let buttonValue = e.target.textContent;
- let expressionOutput = document.getElementById('expressionOutput');
- if (buttonValue === '=') {
- if (firstNumber !== '' && secondNumber !== '' && operator.length === 1) {
- switch (operator) {
- case 'x':
- result = Number(firstNumber) * Number(secondNumber);
- break;
- case '/':
- result = Number(firstNumber) / Number(secondNumber);
- break;
- case '-':
- result = Number(firstNumber) - Number(secondNumber);
- break;
- case '+':
- result = Number(firstNumber) + Number(secondNumber);
- break;
- }
- } else {
- result = NaN;
- }
- document.getElementById('resultOutput').textContent = result;
- } else if (buttonValue >= '0' && buttonValue <= '9' || buttonValue === '.') {
- if (isItFirstNumber) {
- firstNumber += buttonValue;
- } else {
- secondNumber += buttonValue;
- }
- expressionOutput.textContent += buttonValue;
- } else {
- isItFirstNumber = false;
- operator += buttonValue;
- expressionOutput.textContent += ` ${buttonValue} `;
- }
- }
- function clear() {
- document.getElementById('resultOutput').textContent = '';
- document.getElementById('expressionOutput').textContent = '';
- }
- }
Advertisement
Add Comment
Please, Sign In to add comment
Advertisement