所以几周前我开始从一门在线课程中学习Javascript。我到了一个阶段,我开始学习DOM操作,并且有一个为背景生成随机颜色的练习。一开始,我将随机颜色保存为let变量。但是当我看到这个练习的答案时,它使用的是const。这怎么可能,我以为康斯特不能被重新宣布?
function randomColour() {
const r = Math.floor(Math.random() * 255);
const g = Math.floor(Math.random() * 255);
const b = Math.floor(Math.random() * 255);
return `rgb(${r},${g},${b}`;
}发布于 2021-01-23 03:22:36
每当函数被调用时,就会有一个新的环境记录来存储函数中声明的所有变量。const变量只能存储一次。如果再次调用该函数,将有一个新记录,因此变量可以保存另一个值。
function a() {
const b = Math.random();
// assigning b again here won't work
}
a();
a(); // new record, new valuehttps://stackoverflow.com/questions/65855248
复制相似问题