dav*_*lab 8 javascript ecmascript-6
一种我在Javascript中长辈问题:撇开事实是let有不同的变量范围比var确实,在我看来,在绝大多数情况下,没有理由使用var过let.当然,如果你在一个if语句中定义一个变量,那就不一样了,但是除了范围之外还有另一个原因是使用一个而不是另一个吗?
编辑:要清楚,这个问题是关于Javascript中的最佳实践(即利弊),而不是关于var和之间差异的本质let.
谢谢!
不,我认为没有理由.从我读过的内容来看,它var是为了向后兼容.我读过的大多数文章都建议逐步替换所有var出现的内容let.当然,这应该考虑到你所提到的if块之间的差异.我let现在只使用我的ES6代码.Eric Elliott也不使用var.没有什么可以var用来let做得更好.如果需要整个函数范围,请let在函数顶部创建.
我注意到的一个区别是,在全局范围内定义变量时,定义为的变量var可以使用window.variable,而变量let使用windowobject 无法访问.但是使用正确的书面模块化代码,不var应该允许任何语句泄漏window,因此这并不重要.
我也建议使用const而不是let变量引用不会变异的情况.
| 归档时间: |
|
| 查看次数: |
1255 次 |
| 最近记录: |