1.let是块级作用域而var是函数作用域
2.let 与 var 的另一个重要的区别,就是 let 声明的变量不会在作用域中被提升。
getText(){
/* 声名一个函数,使let 和var 都处于for内 看作用域 */
let Array=[{name:'111'}];
for (var i = 0; i < Array.length; i++) {
let a = 1;
}
console.log(a+'这是a')
}
会报错误
Error in onLoad hook: "ReferenceError: a is not defined"
found in
说a没有定义证明a是块级作用域
getText(){
/* 声名一个函数,使let 和var 都处于for内 看作用域 */
let Array=[{name:'111'}];
for (var i = 0; i < Array.length; i++) {
var b = 1;
}
console.log(b+'这是b')
}
输出
说明var 是函数作用域,在整个函数体里面都可以用
本文探讨了JavaScript中let与var声明变量的区别,重点在于作用域的差异:let创建的是块级作用域,而var创建的是函数作用域。此外,文章还通过示例代码展示了这两种声明方式在实际应用中的不同行为。
1270

被折叠的 条评论
为什么被折叠?



