2019-01-25:
一:变量的声明:
1.对于变量的声明添加了let,const两种方式
关于let:
(1)不存在变量提升--必须先声明再使用;
(2)会出现暂时性死区--在一个方法外用var声明了一个变量,在方法内使用,然后在方之后(方法内)再用let声明,会出现暂时性死区;
(3)不允许重复声明--不允许在相同的作用域内重复对一个变量进行let声明;
(4)增加块级作用域(个人理解__欢迎大神指正:每一对{}内都算是一个块级),块级作用域的出现'立即执行函数'--(防止变量污染的一种函数,一般用于对库的封装,)基本就不再那么必要了;
关于const:
(1)声明一个只读的变量(实际上该命令保证的不是该变量的值不动,而是指向该变量的指针不变,区分基本类型和引用类型,基本类型指针指向的就是变量的值,引用类型如对象,数组等,是可以进行操作的,比如增删改,但是不可以进行''=''操作);
(2)在声明的时候就要赋值;
(3)和let一样存在暂时性死区的情况;
(4)Es5变量的声明方式:var function ;Es6:var let const function class import;
关于顶层对象:
(1)浏览器里面,顶层对象是window,但 Node 和 Web Worker 没有window。
(2)浏览器和 Web Worker 里面,self也指向顶层对象,但是 Node 没有self。
(3)Node 里面,顶层对象是global,但其他环境都不支持。
浙公网安备 33010602011771号