document.querySelector('#calculate').addEventListener('click', () => {
if (numTwo) {
switch (operator) {
case '+':
$result.value = parseInt(numOne) + parseInt(numTwo);
break;
case '-':
$result.value = numOne - numTwo;
break;
case '*':
$result.value = numOne * numTwo;
break;
case '/':
$result.value = numOne / numTwo;
break;
default:
break;
}
} else {
alert('숫자를 먼저 입력하세요.');
}
});
문자열의 경우 + 연산자 사용시 문자열로 나오기 때문에 parseInt 를 이용하여 숫자열로 변환하여 계산한다.
나머지 연산자 (-, *, /) 의 경우 문자열도 숫자열로 자동 변환하기 때문에 parseInt 를 입력하지 않아도 된다.
document.querySelector('#clear').addEventListener('click', () => {
numOne = '';
operator = '';
numTwo = '';
$operator.value = '';
$result.value = '';
});
입력값을 초기와 같도록 입력한다.
위의 swich 문을 if 문으로 바꿔 보자.
document.querySelector('#calculate').addEventListener('click', () => {
if (numTwo) {
switch (operator) {
case '+':
$result.value = parseInt(numOne) + parseInt(numTwo);
break;
case '-':
$result.value = numOne - numTwo;
break;
case '*':
$result.value = numOne * numTwo;
break;
case '/':
$result.value = numOne / numTwo;
break;
default:
break;
}
} else {
alert('숫자를 먼저 입력하세요.');
}
});
document.querySelector('#calculate').addEventListener('click', () => {
if (numTwo) {
if (operator === '+') {
$result.value = parseInt(numOne) + parseInt(numTwo);
} else if (operator === '-'){
$result.value = parseInt(numOne) - parseInt(numTwo);
} else if (operator === '*'){
$result.value = parseInt(numOne) * parseInt(numTwo);
} else if (operator === '/'){
$result.value = parseInt(numOne) / parseInt(numTwo);
} else {
alert ('숫자를 먼저 입력하세요.');
}
}
});