(i)
}
}
console.log(arr[8]()); // 10, 11
在上面的代码中,使用var声明的,在全局范围内都是有效的,所以每一次循环,新的i值都会覆盖旧值,导致最后输出的是最后一轮的...不在被提升至函数顶部,当离开if语句块后,dateVal会立即被销毁
当condition的值为false,那么永远不会声明并初始化dateVal
05
const 声明命令
const是Es6新增的关键字...,一旦声明后,它的值就不能被更改,所以通过const声明的常量必须进行初始化,不能留到以后在赋值
// 有效的常量
const maxLength = 10;
// 语法错误,常量未初始化
const...name;
06
关于循环中const声明
在代码中,经常会用到for循环,需要初始化变量,对于for循环来说,可以在初始化时使用const,但要是更改这个变量的话,它就会抛出错误
var arrs =...(浏览器环境中的window对象),使用var会覆盖一个已经存在的全局变量
let,const和class命令声明的全局变量不属于全局对象的属性,声明的变量不会提升,而且只可以在声明这些变量的代码块中使用