1、const声明一个只读的常量。一旦声明,常量的值就不能改变。 2、const声明的变量不得改变值,这意味着,const一旦声明变量,就必须立即初始化,不能留到以后赋值。 3、const的作用域与let命令相同:只在声明所在的块级作用域内有效。 4、const命令声明的常量也是不提升,同样 ...
let命令 ES 新增了let命令,用来声明变量。它的用法类似于var,但是所声明的变量,只在let命令所在的代码块内有效。 for循环的计数器,就很合适使用let命令。 下面的代码如果使用var,最后输出的是 。 上面代码中,变量i是var声明的,在全局范围内都有效。所以每一次循环,新的i值都会覆盖旧值,导致最后输出的是最后一轮的i的值。 常见于闭包的考察 如果使用let,声明的变量仅在块级作 ...
2017-02-10 18:49 2 3662 推荐指数:
1、const声明一个只读的常量。一旦声明,常量的值就不能改变。 2、const声明的变量不得改变值,这意味着,const一旦声明变量,就必须立即初始化,不能留到以后赋值。 3、const的作用域与let命令相同:只在声明所在的块级作用域内有效。 4、const命令声明的常量也是不提升,同样 ...
1、ES6提供了更接近传统语言的写法,引入了Class(类)这个概念,作为对象的模板。通过class关键字,可以定义类。 2、 上面代码定义了一个“类”,可以看到里面有一个constructor方法,这就是构造方法,而this关键字则代表实例对象。也就是说,ES5的构造函数 ...
1、如果想设置跨模块的常量(即跨多个文件),或者说一个值要被多个模块共享,可以采用下面的写法。 2、如果要使用的常量非常多,可以建一个专门的constants目录,将各种常量写在不同的文件里面,保存在该目录下。 然后,将这些文件输出的常量,合并在index.js里面 ...
1、Reflect对象与Proxy对象一样,也是 ES6 为了操作对象而提供的新 API。Reflect对象的设计目的有这样几个。 将Object对象的一些明显属于语言内部的方法(比如Object.defineProperty),放到Reflect对象上。 修改某些Object方法 ...
1、ES6允许直接写入变量和函数,作为对象的属性和方法。这种写法用于函数的返回值,将会非常方便。CommonJS模块输出变量,就非常合适使用简洁写法。 2、ES6 允许字面量定义对象时,用表达式作为对象的属性名,即把表达式放在方括号内。 3、ES5比较两个值是否相等 ...
1、修饰器对类的行为的改变,是代码编译时发生的,而不是在运行时。这意味着,修饰器能在编译阶段运行代码。 2、 上面代码中,@testable就是一个修饰器。它修改了MyTestabl ...
1、async函数返回一个 Promise 对象。 async函数内部return语句返回的值,会成为then方法回调函数的参数。 2、async函数内部抛出错误,会导致返回的 Pr ...
1、async 函数是 Generator 函数的语法糖。前文有一个 Generator 函数,依次读取两个文件。 写成async函数,就是下面这样。 async函数就 ...