大多数程序员都说应该始终使用“ let”,因此出现了一个问题:是否有任何理由仍然需要使用var还是完全使用var? “已弃用”?
答案 0 :(得分:2)
let ,否则不应在当前作用域之外共享该变量,例如在其他位置使用相同的名称但不应在重用之前进行设置。大量分配变量对于使代码在范围内更易读和易于编写非常有用。
例如,您可能想写
for (let city of cities) {
console.log(city.name + city.state + city.areacode);
}
但是您可能不想每次都写 city。 -因为尽管此for循环现在并没有做太多工作-将来您还是希望还有更多!因此,在这种情况下,您可以这样做:
for (let city of cities) {
let cname = city.name;
let cstate = city.state;
let carea = city.areacode;
console.log(cname + cstate + carea);
}
这使您可以更好地将数据与逻辑分开……而不必担心在其他地方设置cname。
关于变量的范围:
people = ["Frank", "Tina"];
for (let p of people) {
console.log(p);
}
console.log(p);
这将引发未分配的变量错误,但会显示前两个名称。
如果您要分配一个可以让所有人看到的变量范围,则var 非常有用。有用的说法是,分配一个URL来检索json数据,然后即时更改该URL。因此,所有其他函数始终访问同一数据,而不是每次都调用一个函数来获取它。如果您可能想通过多个不同的功能跟踪元素,对象等,则它们很有用。
people = ["Frank", "Tina"];
for (var p of people) {
console.log(p);
}
console.log(p);
这将显示两个名称,但姓氏两次。
const 类似于 var ,但一旦分配就无法更改。