中使用var声明的变量,没有块级作用域,会污染全局变量,如果使用不当,会产生一些达不到自己预期的效果,所以在Es6中就有了块级作用域
块级作用域:用于声明在指定的块的作用域之外无法访问的变量
函数内部...{{{{let name = 'itclanCoder'}}}}
内层作用域可以定义外层作用域的同名变量,内部声明的函数都不会影响到作用域的外部
{
let name = '随笔川迹'...f内定义的dateVal变量在使用let声明后,不在被提升至函数顶部,当离开if语句块后,dateVal会立即被销毁
当condition的值为false,那么永远不会声明并初始化dateVal
05...const 声明命令
const是Es6新增的关键字,一旦声明后,它的值就不能被更改,所以通过const声明的常量必须进行初始化,不能留到以后在赋值
// 有效的常量
const maxLength =...let,const为javaScript引入了词法作用域,使用它们声明变量不会提升,而且只可以在声明这些变量的代码块种使用
使用let,const也能够节省内存空间,不会造成全局变量的污染,必须的得前置声明赋值