let声明变量与var声明变量的区别

1.var是函数作用域 let是块作用域
let声明的变量在if/for循环中仍然是局部变量。
好处:可以避免全局污染,如果var声明的全局变量有可能会被无意覆盖,而let不会
// 块:包含了程序语句的大括号
let a = 10; //全局变量
if( a>1 ){
let b = 20; //局部变量
}
2.var有变量提升,let不存在变量提升
let变量必须先声明在使用(暂时性死区/TDZ)
// let变量必须先声明再使用(暂时性死区 TDZ)
console.log( a );
let a = "ok";

3.var在同一作用域下可以重复声明,let不能重复声明
好处?在复杂的项目中,变量的重复声明在所难免,var的情况不报错,容易产生bug,但let直接报错,容易排除。
在vscode中也会给我们提供报错信息
let 同一作用域下不能重复声明

let apple = "iphone13";
let apple = "红富士"; //Identifier 'a

let声明变量与var声明变量的区别最先出现在Python成神之路

版权声明:
作者:siwei
链接:https://www.techfm.club/p/27325.html
来源:TechFM
文章版权归作者所有,未经允许请勿转载。

THE END
分享
二维码
< <上一篇
下一篇>>