add some of the logic

This commit is contained in:
2026-03-28 11:01:04 +02:00
parent 82bd8786cc
commit d4a2866358
3 changed files with 97 additions and 15 deletions
+83
View File
@@ -0,0 +1,83 @@
const display = document.querySelector("#display");
let previousNumber = 0;
let lastOperation = "";
function doOperation(operation, numA, numB) {
numA = Number(numA);
numB = Number(numB);
switch (operation) {
case "+":
return numA + numB;
break;
}
}
//Set numbers logic
const numbers = document.querySelectorAll(".number");
numbers.forEach((number) => {
number.addEventListener("click", (event) => {
updateDisplay(event.target.innerText);
});
});
function updateDisplay(number) {
let currentResult = display.value;
if (currentResult === "0") {
display.value = number;
} else {
display.value += number;
}
}
function reset() {
display.value = "0";
previousNumber = "0";
lastOperation = "";
}
// Set clear button
const clearButton = document.querySelector(".clear");
clearButton.addEventListener("click", () => {
reset();
});
// Set backspace button
backspaceButton = document.querySelector(".backspace");
backspaceButton.addEventListener("click", () => {
let result = display.value;
result = result.slice(0, -1);
if (result.length === 0) {
result = "0";
}
display.value = result;
});
// Operations
const operators = document.querySelectorAll(".operator");
operators.forEach((operator) => {
operator.addEventListener("click", (event) => {
if (lastOperation) {
previousNumber = doOperation(
lastOperation,
previousNumber,
display.value,
);
} else {
previousNumber = Number(display.value);
}
display.value = "0";
lastOperation = event.target.innerText;
});
});
// Result button
const resultButton = document.querySelector(".result");
resultButton.addEventListener("click", (event) => {
if (lastOperation) {
display.value = doOperation(lastOperation, previousNumber, display.value);
}
});
reset();