Skip to content

Commit db48550

Browse files
committed
add function to check for brackets to avoid redundancy on key code input
1 parent d5869c4 commit db48550

1 file changed

Lines changed: 15 additions & 11 deletions

File tree

calc.js

Lines changed: 15 additions & 11 deletions
Original file line numberDiff line numberDiff line change
@@ -17,16 +17,7 @@ for (item of buttons) {
1717
screenValue = "";
1818
screen.value = screenValue;
1919
} else if (buttonText == "=") {
20-
// Check if there's a number directly infront of bracket
21-
if (
22-
screen.value.includes("(") &&
23-
!isNaN(screen.value.charAt(screen.value.indexOf("(") - 1))
24-
) {
25-
window.onBracketMultiplication();
26-
return;
27-
} else {
28-
screen.value = eval(screenValue);
29-
}
20+
checkForBracketMulti(); // automatically evaluates if no brackets
3021
} else {
3122
screenValue += buttonText;
3223
screen.value = screenValue;
@@ -62,7 +53,7 @@ document.addEventListener("keydown", function (event) {
6253
screen.value = screenValue;
6354
}
6455
if (event.keyCode == 13 || event.keyCode == 187) {
65-
screen.value = eval(screenValue);
56+
checkForBracketMulti(); // automatically evaluates if no brackets
6657
} else if (event.keyCode == 46) {
6758
screenValue = "";
6859
screen.value = screenValue;
@@ -96,3 +87,16 @@ function addStr(str, index, stringToAdd) {
9687
str.substring(0, index) + stringToAdd + str.substring(index, str.length)
9788
);
9889
}
90+
91+
function checkForBracketMulti() {
92+
// Check if there's a number directly infront of a bracket
93+
if (
94+
screen.value.includes("(") &&
95+
!isNaN(screen.value.charAt(screen.value.indexOf("(") - 1))
96+
) {
97+
window.onBracketMultiplication();
98+
return;
99+
} else {
100+
screen.value = eval(screenValue);
101+
}
102+
}

0 commit comments

Comments
 (0)