您的问题有两个方面:const
代替使用的技术方面是var
什么,以及与人为因素相关的方面是什么。
技术差异很大。在编译语言中,常量将在编译时被替换,并且其使用将允许其他优化(如删除无效代码)以进一步提高代码的运行效率。最近的(松散使用的术语)JavaScript引擎实际上会编译JS代码以获得更好的性能,因此使用const关键字将告知它们上述优化是可能的,应该完成。这导致更好的性能。
与人有关的方面与关键字的语义有关。变量是一种数据结构,其中包含预期会更改的信息。常数是一种数据结构,其中包含永远不变的信息。如果有错误的余地,var
应始终使用。但是,并非必须使用声明所有在程序生存期内从未改变的信息const
。如果在不同的情况下信息应该更改,var
即使实际的更改未出现在您的代码中,也请使用该信息进行指示。