<div id="demo"></div><br>
<script>
let a = [1,2,3];
a.forEach(function(item){
document.getElementById('demo').innerHTML=item;
})
</script>
从上面的代码中,我只能得到最后一位数字。为什么它没有显示数组中的所有数字。但是当我使用innerHTML+=item
时,它工作正常。 =和+ =在这里有什么区别。我发现每个解释+ =的教程都意味着x = x + y。但是我相信+ =幕后有一个巨大的逻辑,但是没有人对此有任何解释。任何人都可以解释这一点将非常有帮助。预先感谢!
答案 0 :(得分:0)
=和+ =在这里有什么区别?
=您正在将值分配给某些内容。 + =您不仅要分配而且还保留先前的值,并且还要分配先前的值并将其与当前值连接起来。
答案 1 :(得分:0)
=和+ =不同
document.getElementById('demo').innerHTML=item;
每次循环中,都会设置为一个项目。因此,经过三遍,您将像这样设置innerHTML:
innerHTML = '1'
innerHTML = '2'
innerHTML = '3'
document.getElementById('demo')。innerHTML + = item;
将附加该项,并且与
相同document.getElementById('demo').innerHTML=document.getElementById('demo').innerHTML + item;
因此,每次执行都会执行:
innerHTML = originalHTML + '1'
innerHTML = originalHTML + '1' + '2'
innerHTML = originalHTML + '1' + '2' + '3'