在Javascript中考虑以下for循环。
npm start
如果我运行代码,我将在控制台中获得10。为什么是这样?变量'i'的范围如何在循环外可用?
答案 0 :(得分:0)
在javascript中,ES6之前没有块级范围(带let),因此您声明的任何变量都将具有函数级范围(如果声明位于函数内)或全局范围。
ECMAScript 6之前的JavaScript没有块语句范围; 相反,在块中声明的变量是函数的本地变量 块(或全局范围)块位于其中。比如说 以下代码将记录5,因为x的范围是函数(或 声明x的全局上下文,而不是块,其中 这种情况是一个if语句。