var let 区别

var a = 5;
var b = 10;
 
if (a === 5) {
  let a = 4; // if 块级作用域
  var b = 1; // 函数级作用域,这里是if块,非函数
 
  console.log(a);  // 4
  console.log(b);  // 1
}
 
console.log(a); // 5
console.log(b); // 1

var声明的变量是函数级的或者是全局的,而let用于声明块级作用域。
在函数或程序顶层使用时,let与var没有什么区别:

var x = 'global';
let y = 'global';
console.log(this.x);  // 'global'
console.log(this.y);  // 'global'
©著作权归作者所有,转载或内容合作请联系作者
平台声明:文章内容(如有图片或视频亦包括在内)由作者上传并发布,文章内容仅代表作者本人观点,简书系信息发布平台,仅提供信息存储服务。

推荐阅读更多精彩内容