учу JS меньше недели, сегодня решил написать что-нибудь простое, выбор пал на калькулятор.
В общем и целом калькулятор с горе по полам сделал, но хотелось бы его доработать, чтобы поле для ввода чисел было только одно, пока голова не варит, как это реализовать. Есть только мысль через циклы и функции в нем, но мне кажется я не правильно мыслю. Ниже приложил код, хотелось бы услышать мнение, что можно было бы исправить/упростить/переделать, но не из разряда хардкор.
P.S классы и названия переменных немного от балды написаны, прошу не придираться.
<div class="calculator">
<input class="num1" type="text" placeholder="Число">
<div class="case__button">
<button value="+">+</button>
<button value="-">-</button>
<button value="*">*</button>
<button value="/">/</button>
</div>
<input class="num2" type="text" placeholder="Число">
<input class="result" type="text" placeholder="Результат">
<button class="f1">Посчитать</button>
</div>
let num1 = document.querySelector('.num1');
let num2 = document.querySelector('.num2');
let resultField = document.querySelector('.result');
let selectedSign;
const button2 = document.querySelector('.f1');
document.querySelector('.case__button').onclick = (event) => {
if (event.target.tagName === 'BUTTON') {
selectedSign = event.target.value;
}
};
button2.onclick = () => {
let a = parseInt(num1.value, 10);
let b = parseInt(num2.value, 10);
let result;
switch (selectedSign) {
case '+':
result = a + b;
break;
case '-':
result = a - b;
break;
case '*':
result = a * b;
break;
case '/':
result = a / b;
break;
}
resultField.value = result;
};