ES6特性1——let和const

let和const
一、let增长了块级做用域。node

“Tempory Death Zone TDZ”暂时性死区,在变量声明前,都属于变量死区,调用未声明变量会报错 。

二、const声明变量,声明后变量不能改变。跟let同样,声明的变量只在块级做用域内有效。浏览器

三、跨模块常量code

// constants.js 模块
 export const A = 1;
 export const B = 3;
 export const C = 4;

 // test1.js 模块
 import * as constants from './constants';
 console.log(constants.A);
 console.log(constants.B);

 // test2.js 模块
 import {A, B} from './constants';
 console.log(A);
 console.log(B);

四、全局对象属性对象

全局对象是最顶层对象,在浏览器指window对象,在nodejs是global对象。在JS中,全部的变量都是全局对象的属性。
 在ES6中,var、function命令声明的全局变量属于全局对象属性;
 let、const、class命令声明的全局变量,不属于全局对象的属性。
相关文章
相关标签/搜索