UNIT 6 : 간단한 웹앱 만들기
BIL: loop, function
화면에 0, +, 0, =, 0 순서로 출력
if (target.matches("button")) {
if (action === "clear") {
console.log("clear");
firstOperend.textContent = 0;
operator.textContent = "+";
secondOperend.textContent = 0;
calculatedResult.textContent = 0;
}
...
}
첫 번째 화면에 누른 숫자 출력
if (target.matches("button")) {
if (action === "number") {
if (firstOperend.textContent === "0") {
firstOperend.textContent = buttonContent;
}
}
...
}
첫 번째 화면은 숫자, 두 번째 화면에는 연산자 출력
if (target.matches("button")) {
if (action === "number") {
if (firstOperend.textContent === "0") {
firstOperend.textContent = buttonContent;
}
else {
secondOperend.textContent = buttonContent;
}
}
...
}
화면에 숫자, 연산자, 순자의 순서로 출력
if (target.matches("button")) {
if (action === "number") {
if (firstOperend.textContent === "0") {
firstOperend.textContent = buttonContent;
}
else {
secondOperend.textContent = buttonContent;
}
}
...
}
if (action === "operator") {
operator.textContent = buttonContent;
}
화면에 숫자, 연산자, 숫자, =, 연산 결과의 순서로 출력
if (target.matches("button")) {
if (action === "number") {
if (firstOperend.textContent === "0") {
firstOperend.textContent = buttonContent;
}
else {
secondOperend.textContent = buttonContent;
}
}
...
}
if (action === "operator") {
operator.textContent = buttonContent;
}
...
if (action === "calculate") {
console.log("계산 버튼");
calculate(
firstOperend.textContent,
operator.textContent,
secondOperend.textContent
);
}
}
function calculate(n1, operator, n2) {
let result = 0;
let num1 = Number(n1);
let num2 = Number(n2);
if (operator === "+") {
result = num1 + num2;
} else if (operator === "-") {
result = num1 - num2;
} else if (operator === "*") {
result = num1 * num2;
} else if (operator === "/") {
result = num1 / num2;
}
return String((calculatedResult.textContent = result));
}
여기까지는 그래도 괜찮게 풀었는데요... (사실 맨처음에는 문제 이해도 못함)
Advanced Challenge test도 어떻게저떻게 완료했지만...
Nightmare 소수 부분에서 자꾸자꾸 오류가 난다...
오늘은 진짜 과제 제출마저도 스트레스 투성이라서 일단 여기까지...
페이스 조절을 위해서 Nightmare 보충은 주말에 합니다...
진짜 눈물이 줄줄 난다... 나는 real 10일차인데도...