
계산기 기본 함수
function calculate(n1, operator, n2) {
let result = 0;
// 입력값이 n1 : '1', operator : '+', n2 : '2' 인 경우, 3이 리턴됩니다.\
if (operator === '+') {
result = Number(n1) + Number(n2)
} else if (operator === '-') {
result = Number(n1) - Number(n2)
} else if (operator === '*') {
result = Number(n1) * Number(n2)
} else if (operator === '/') {
result = Number(n1) / Number(n2)
}
return String(result);
}
if (target.matches('button')) {
if (action === 'number') {
if(display.textContent === '0'){
display.textContent = buttonContent;
}else{
display.textContent = display.textContent + buttonContent;
}
if (action === 'operator') {
firstNum = display.textContent;
operatorForAdvanced = buttonContent; // 연산자에 누르는 버튼을 저장
previousKey = 'operator';
}
if (action === 'number') {
if(previousKey === 'operator'){
display.textContent = buttonContent;
}
else{
if(display.textContent === '0'){
display.textContent = buttonContent;
}else{
display.textContent = display.textContent + buttonContent;
}
}
previousKey = 'number';
}
마지막으로 처음 만들었던 계산기 함수를 호출해주면
if (action === 'calculate') {
display.textContent = calculate(firstNum, operatorForAdvanced, display.textContent);
}