1、 作用域
let定义有块级作用域,在作用域外调用就会报错。
/*
块级作用域是一个语句,将多个操作封装在一起,没有返回值
*/
var的是全局作用域。
例子:循环中就是一个特别的例子
for (var i = 0;i < 6;i++) {}
console.log(i);// 6,此为全局
for (let i = 0;i < 6;i++) {}
console.log(i);// undefined,此只可以在for块级作用域内
2、声明提升
let没有变量提升,若是没有定义则会报错ReferenceError。
var有。
3、不允许重复声明
以下都会报错
function func() {
let a = 10;
var a = 1;
}
function func() {
let a = 10;
let a = 1;
}
ES6---let和var区别
最新推荐文章于 2023-03-30 16:25:11 发布