summaryrefslogtreecommitdiff
path: root/script.js
diff options
context:
space:
mode:
Diffstat (limited to 'script.js')
-rw-r--r--script.js122
1 files changed, 16 insertions, 106 deletions
diff --git a/script.js b/script.js
index 90ada2d..bf06a5a 100644
--- a/script.js
+++ b/script.js
@@ -1,118 +1,28 @@
let results = document.querySelector('.results')
-let answer = '';
-let answered = false;
-const c = document.querySelector('.button-c')
+const nod = document.querySelectorAll('[data-value]')
+const C = document.querySelector('.button-C')
const X = document.querySelector('.button-X')
-const dot = document.querySelector('.button-dot')
-const num = document.querySelectorAll('.num')
-const op = document.querySelectorAll('.sp')
+const eq = document.querySelector('.button-eq')
-// Numbers
-
-num[0].addEventListener('click', () => {
- answer += '0';
- results.textContent = answer;
-})
-
-num[1].addEventListener('click', () => {
- answer += '1';
- results.textContent = answer;
-})
-
-num[2].addEventListener('click', () => {
- answer += '2';
- results.textContent = answer;
-})
-
-num[3].addEventListener('click', () => {
- answer += '3';
- results.textContent = answer;
-})
-
-num[4].addEventListener('click', () => {
- answer += '4';
- results.textContent = answer;
-})
-
-num[5].addEventListener('click', () => {
- answer += '5';
- results.textContent = answer;
-})
-
-num[6].addEventListener('click', () => {
- answer += '6';
- results.textContent = answer;
-})
-
-num[7].addEventListener('click', () => {
- answer += '7';
- results.textContent = answer;
-})
-
-num[8].addEventListener('click', () => {
- answer += '8';
- results.textContent = answer;
-})
-
-num[9].addEventListener('click', () => {
- answer += '9';
- results.textContent = answer;
-})
-
-// Operations
-
-op[0].addEventListener('click', () => {
- answer += '/';
- results.textContent = answer;
-})
-
-op[1].addEventListener('click', () => {
- answer += '*';
- results.textContent = answer;
-})
-
-op[2].addEventListener('click', () => {
- answer += '-';
- results.textContent = answer;
-})
-
-op[3].addEventListener('click', () => {
- answer += '+';
- results.textContent = answer;
-})
-
-// Equals (=)
-
-op[4].addEventListener('click', () => {
- answered = true;
- answer = eval(answer);
- results.textContent = answer;
-})
-
-// Dot (.)
-
-dot.addEventListener('click', () => {
- answer += '.';
- results.textContent = answer;
+// NOD (Numbers, Operations and Dot)
+nod.forEach( (element) => {
+ element.addEventListener('click', (event) => {
+ results.textContent += event.target.dataset.value;
+ })
})
// Clear (C)
-
-c.addEventListener('click', () => {
- answer = '';
- results.textContent = answer;
+C.addEventListener('click', () => {
+ results.textContent = '';
})
// Remove (X)
-
X.addEventListener('click', () => {
- if (answered == true) {
- answer = '';
- results.textContent = answer;
- answered = false;
- return;
- }
- answer = answer.slice(0, -1);
- results.textContent = answer;
+ results.textContent = results.textContent.toString().slice(0, -1);
})
+
+// Equals (=)
+eq.addEventListener('click', () => {
+ results.textContent = eval(results.textContent);
+}) \ No newline at end of file