继上次es6-变量和es6变量2,我们继续讨论es6特性-顶层对象
顶层对象是指在最外层作用域中的变量全局可访问,浏览器中为window对象,node环境中为global对象。
例如var a=1 那么windows.a 就是1,顶层对象的属性与全局变量相关被认为是js语言中最大的败笔,首先顶层对象只有在运行时才会报错,其次因为是全局所以对象属性可以导出读写不利于模块化变成。
Es6中为了改变这一现象,把新增的变量let、const 、class命令声明的全局变量都不在属于顶层对象。例如let b = 1;则window.b是未定义的,通俗的说es6把全局变量与顶层对象隔离开。
上一篇: 什么是es6——变量2
下一篇: 什么是es6——解构赋值