js中var和let的区别

作用范围不同: 
let作用于代码块(即{})中; 
var作用于函数中;

let 不存在变量提升,所以每次循环都会执行一次,声明一个新变量(只是初始化的值不一样)。for 的每次循环都是不同的块级作用域,而 let 声明的变量是块级作用域的,所以也不存在重复声明的问题。 

声明提升区别: 
let声明的变量不会提升; 
var声明的变量会提升到作用域的头部; 

重复声明区别: 
let不允许在相同作用域内重复声明; 
var可以在相同作用域内重复声明;

猜你喜欢

转载自blog.csdn.net/weixin_42413684/article/details/81087477
今日推荐