jga*_*fin 4 resharper typescript ecmascript-6
VStudio或ReSharper给出了以下建议:

在这种情况下,常数意味着什么?如果它是当前方法范围中的常量,那么目的是什么?方法往往很小,因此与普通变量相比,它不应该具有任何优势.
请赐福我
这并不复杂.
使用constover let(并且绝对var)总是更好,因为const使其他编码器更容易,或者当你将来回到相同的代码时,你可以理解发生了什么,因为你只需要看一下知道变量内容的初始赋值.因此,我们鼓励您尽可能使用它.
应该注意的是,虽然常量不能重新分配,但它们的内容可以.所以const x = [1]; x[0] = 2;是完全有效的代码,但它是一个明确的反模式,因为人们应该期望一个常数保持不变.如果您想使用更复杂的数据结构,请查看ImmutableJs或其他允许您使用不可变数据结构的库.
您可以在此处运行varvs letvs 的性能测试const:https://jsperf.com/let-vs-var-performance/35.在我的笔记本电脑上,使用Firefox 38的OSX 10.10.2 const比var(这是最快的)慢3%,而Chrome 43 const比慢了1.28%var.表明仍有一些优化工作要做.请注意,const此性能测试正在函数范围内使用.
请记住,const并且let是2015年的ECMAScript标准的一部分.因此,当使用const或let转换为较旧的ECMAScript目标时,实际上没有性能差异,因为const并且let只是转化为旧的var.
| 归档时间: |
|
| 查看次数: |
450 次 |
| 最近记录: |