es5的 var 和 es6 的 let 区别?
理解的很对,var是以函数为作用域的,而let是以块为作用域的(与大多数高级语言相同)。所以ES6的这些特性正说明js逐渐向传统高级语言靠拢,提供严格明确的语言定义,便于开发大团队协作和构建更大规模的应用。
东华帝君 开发者_运维问答 22小时前
对,函数作用域 => 块级作用域。
赵龙 22小时前 开发者_如何学编程
送你一个链接,拿走不谢ECMAScript 6入门-let
lxt611 22小时前
自己总结的关于es6的let和const特性:let命令定义变量有如下特点(1)变量仅在块级作用域内有效,并且在块级作用域内独立,不受外界影响(2)变量必须先定义后使用,并且在js预编译时不存在变量提升(3)变量读取仍然按照作用域链往上开发者_开发技巧查找(4)不可在同一作用域内重复定义变量(5)在全局使用let定义变量时,该变量不再属于全局属性。const命令用于定义常量,一旦赋值完成,则不可再变。其他特性跟let变量一样。let,const定义变量,消除了使用var定义变量时带来的种种意外情况与不合理情况,使得变量的定义变得清晰可控,有了let与const,则不该再使用var定义变量。另外在let,const的选择上,const的效率更高,因此,当程序中的变量一旦初始化则不会再改变时,此时使用const更加合理。当变量需要重复赋值时,则选择let。
精彩评论