通过 ECMAScript 标准视角看 var、let 和 const 的区别
原文英文,约3100词,阅读约需11分钟。发表于: 。Many articles explain the differences between var, let, and const using terms such as hoisting, Temporal Dead Zone(TDZ), functional and block scope, etc., often without referencing the standard....
本文解释了var、let和const之间的区别,重点在于作用域、执行上下文的创建阶段和变量初始化。let和const关键字创建的变量在创建阶段被赋予未初始化的值,而var变量被赋予undefined值。let和const变量的作用域是词法环境,而var变量的作用域是变量环境。let和var变量可以有相同的名称,但const变量不能。