我正在向 MDN 学习,所以这里有这样的代码,这让我大吃一惊,为什么 line 中的 choice
变量在const choice = select.value;
这里被用作常量。我相信这.value
可能是改变,并且常量在赋值后不能改变......或者重新声明变量会导致错误......每次,我改变选择值,它调用setWeather
函数,对吗?那么,那里发生了什么,有人可以解释一下吗?
const select = document.querySelector('select');
const para = document.querySelector('p');
select.addEventListener('change', setWeather);
function setWeather() {
const choice = select.value;
if (choice === 'sunny') {
para.textContent = 'It is nice and sunny outside today. Wear shorts! Go to the beach, or the park, and get an ice cream.';
} else if (choice === 'rainy') {
para.textContent = 'Rain is falling outside; take a rain coat and an umbrella, and don\'t stay out for too long.';
} else if (choice === 'snowing') {
para.textContent = 'The snow is coming down — it is freezing! Best to stay in with a cup of hot chocolate, or go build a snowman.';
} else if (choice === 'overcast') {
para.textContent = 'It isn\'t raining, but the sky is grey and gloomy; it could turn any minute, so take a rain coat just in case.';
} else {
para.textContent = '';
}
}
还有来自 MDN 网站的链接https://developer.mozilla.org/en-US/docs/Learn/JavaScript/Building_blocks/conditionals