我正在从MDN学习,所以这里是这样的代码,这让我很惊讶为什么AttributeError: 'Spider' object has no attribute 'i'
行中的choice
变量在这里用作常量。我相信const choice = select.value;
可能会更改,并且常量在赋值后无法更改...或变量的重新声明会导致错误...
每次更改选择值,它都会调用.value
函数,对吗?
那么,那里发生了什么,有人可以解释一下我吗?
setWeather
还有来自MDN网站https://developer.mozilla.org/en-US/docs/Learn/JavaScript/Building_blocks/conditionals
的链接答案 0 :(得分:0)
请参见const变量的范围,其寿命仅在函数运行时存在,并在函数完成时结束,因此,当再次调用该函数时,它是一个已分配值的新变量。您必须了解变量的范围。
答案 1 :(得分:0)
const声明创建对值的只读引用。这并不意味着它拥有的值是不可变的,只是不能重新分配变量标识符。例如,在内容是对象的情况下,这意味着可以更改对象的内容(例如其属性)(有关更多详细信息,请访问:https://developer.mozilla.org/en-US/docs/Web/JavaScript/Reference/Statements/const)。>
请在下面的示例中找到,就像“ const select”一样,在这里我声明了一个类型为object的名为“ car”的const变量,并且可以更改“ car”对象的属性“ model”:
const car = {type:"Fiat", model:"500", color:"white"};
car.model= "EX60";
console.log(car);