这是一个具体的例子:
const out6 = document.querySelector('.out-6');
const input6 = document.querySelector('.i-6');
let a6 = '';
function t6() {
const value = +input6.value;
for (let i = 1; i <= value; i++) {
a6 += '******<br>'
}
out6.innerHTML = a6;
}
document.querySelector('.b-6').onclick = t6;
<div><input type="number" class="i-6"></div>
<button class="button-primary b-6">Запуск</button>
<div class="out-6"></div>
const
意味着变量的值不会进一步改变。
但我不太确定应该考虑什么作为改变。我们实际上并没有覆盖 的值value
,但是如果我们在 中输入不同的值可以改变它input
。
因此,我不明白:在这种情况下使用什么更好 -let
或const
?
更改是对新值的显式分配。
代码中只有一个赋值,在初始化时
因此使用
const
.否则,尝试为常量分配新值时会出现错误,您需要更改
const
为反正let
。以防万一:如果您突然假设
value
每次向 中引入新内容时它都会发生变化input
,那么事实并非如此。当您将原始值分配给变量(例如数字或字符串)时,它不会保留指向值源的链接,因此在这种情况下,无论您在字段中输入什么,变量都不会改变。如果你给一个变量赋了一个非原始的值,例如输入元素本身,那么连接就会产生,随着元素属性的每次改变,变量中对象的属性也会改变,因为对象是通过引用分配的,而不是复制的,它将是同一个对象。但即使在这种情况下,您也可以使用const
,因为无论更改其属性,该变量仍将引用同一个对象。