ECMAScript和JavaScript的关系
ECMAScript6是JavaScript语言的下一代标准,2015年6月正式发布。Mozilla公司将在这个标准的基础上,推出JavaScript2.0
ECMAScript是JavaScript语言的国际标准,而JavaScript是ECMAScript的实现
浏览器兼容
https://github.com/paulmillr/es6-shim
let命令
基本用法
ES6新增了let命令,用来声明变量。用法类似于var,但所生命的变量,只在let命令所在的代码块内有效
不存在变量提升
let不像var那样会存在变量提升
暂时性死区
只要块级作用域内存在let命令,它所生命的变量就’绑定’(binding)这个区域,不在受外部影响
不允许重复声明
let不允许在相同作用域内,重复声明同一个变量
const命令
const也用来声明常量,一旦声明常量的值不可改变。
跨模块常量
|
|
全局对象属性
全局对象是最顶层的对象,在浏览器环境指的是window对象,在Node.js指的是global对象。在JavaScript语言中,所有全局变量都是全局对象的属性。(Node的情况比较特,这一条只对REPL环境适用,模块环境必须显式生命global属性)
ES6规定,var命令和function命令声明的全局变量,属于全局对象的属性;let命令、const命令、class命令声明的全局变量,不属于全局对象的属性
|
|