Tag: var

JavaScript – 使用“let”和“var”在JavaScript中声明变量有什么区别?

ECMAScript 6介绍了该let声明。我听说它被描述为“本地”变量,但我仍然不太确定它与var关键字的行为方式有何不同。 有什么区别?何时应该let使用var? 答案 区别在于范围界定。var的范围限定为最近的功能块,let并且范围限定为最近的封闭块,该封闭块可以小于功能块。如果在任何区域之外,两者都是全球 此外,声明的变量let在它们的封闭块中声明之前是不可访问的。如演示中所示,这将引发ReferenceError异常。 演示: 显示代码段 全球: 在功能块之外使用它们非常相似。 let me = 'go'; // globally scoped var i = 'able'; // globally scoped 但是,定义的全局变量let不会作为属性添加到全局window对象上,就像定义的那样var。 console.log(window.me); // undefined console.log(window.i); // 'able' 功能: 在功能块中使用时它们是相同的。 function ingWithinEstablishedParameters() { let terOfRecommendation = 'awesome worker!'; //function block scoped var sityCheerleading = 'go!'; //function block scoped } 块: 这是区别。let仅在for()循环var中可见,并且对整个函数可见。 function