作用范围不同:
let作用于代码块(即{})中;
var作用于函数中;
let 不存在变量提升,所以每次循环都会执行一次,声明一个新变量(只是初始化的值不一样)。for 的每次循环都是不同的块级作用域,而 let 声明的变量是块级作用域的,所以也不存在重复声明的问题。
声明提升区别:
let声明的变量不会提升;
var声明的变量会提升到作用域的头部;
重复声明区别:
let不允许在相同作用域内重复声明;
var可以在相同作用域内重复声明;
作用范围不同:
let作用于代码块(即{})中;
var作用于函数中;
let 不存在变量提升,所以每次循环都会执行一次,声明一个新变量(只是初始化的值不一样)。for 的每次循环都是不同的块级作用域,而 let 声明的变量是块级作用域的,所以也不存在重复声明的问题。
声明提升区别:
let声明的变量不会提升;
var声明的变量会提升到作用域的头部;
重复声明区别:
let不允许在相同作用域内重复声明;
var可以在相同作用域内重复声明;