在ES5中我们习惯使用var声明变量,但是使用var会让常量、块级变量这些概念的差别不能很好地体现出来。当你在开发中使用var声明的变量面临随时被修改和重新分配的时候,你会时刻担心代码是否能正常运行。而ES6新增的let命令和const命令解决了这些困扰,使变量的作用域和语义变得更加精准。let和const的出现彻底改变了声明变量的风格,极大地提高了开发人员的开发效率和代码的整洁性。
至此,我们一共学习了三种方式来声明变量/常量。那么,到底该用哪种方式呢?
其实在let和const出现之后,有很多开发者就不再推荐使用var来定义变量了,而是使用const来定义常量,使用let来定义变量,这样代码的语义更加准确,也保证了只有声明后才能使用,更贴近人的正常逻辑。
在实际开发中,使用关键字定义变量有一个口诀:“先使用const,let次之,不使用var”。这个口诀简单直接,没有含糊不清的地方,如果采用这个口诀,至少可以保证团队代码风格的统一,提升团队的工作效率。
如果在定义变量时不确定其在后期使用时是否需要修改,就先使用const关键字定义变量,当在使用时发现需要更改该值时,可以再将声明该值的关键字更改为let。