I'm trying to create a JS calculator.
<div class="container">
<div class="input"></div>
<button class="num" id="num1">1</button>
<button class="num" id="num2">2</button>
<button class="num" id="num3">3</button>
<button class="num" id="num4">4</button>
<button class="num" id="num5">5</button>
<button class="num" id="num6">6</button>
<button class="num" id="num7">7</button>
<button class="num" id="num8">8</button>
<button class="num" id="num9">9</button>
<button class="num" id="num0">0</button>
<button class="equal">=</button>
<button class="plus">+</button>
<button class="minus">-</button>
</div>
I just began to write code that will display the numbers that were clicked and was wondering why this code works:
document.querySelectorAll('.num').forEach(el => {
el.addEventListener('click', () => {
document.querySelector('.input').textContent += el.textContent;
})
})
While this code doesn't:
var value = document.querySelector('.input').textContent;
document.querySelectorAll('.num').forEach(el => {
el.addEventListener('click', () => {
value += el.textContent;
})
})
Aren't they the same? The only difference is that in the second example a variable holds the querySelector and the textContent property.