) {
var tmp = "itclanCoder";
return tmp;
} else {
// 此处可访问变量value,其值为undefined...tmp的声明被提升至函数顶部,而初始化操作依旧停留在原处执行,这就意味着else中的也可以访问到该变量tmp,因为此时变量还没有初始化,只有定义,但没有赋值,所以值是undefined
场景2-用来计数循环变量泄露为全局变量...,所使用的变量就已存在,但是不可获取,只有等到声明变量的那一行代码出现,才可以获取和使用该变量
04
为什么使用let,const声明变量可节省内存空间
如下面代码
function f(condition...,当离开if语句块后,dateVal会立即被销毁
当condition的值为false,那么永远不会声明并初始化dateVal
05
const 声明命令
const是Es6新增的关键字,一旦声明后,它的值就不能被更改...let,const为javaScript引入了词法作用域,使用它们声明变量不会提升,而且只可以在声明这些变量的代码块种使用
使用let,const也能够节省内存空间,不会造成全局变量的污染,必须的得前置声明赋值