ES6

154 阅读1分钟

1.this

全局环境中,this会返回顶层对象。但是,Node 模块和 ES6 模块中,this返回的是当前模块

2.变量的解构赋值 导致undefined

 JavaScript 引擎会将{x}理解成一个代码块,从而发生语法错误

解构赋值 看不见的传参 优点

const map = new Map();
map.set('first', 'hello');
map.set('second', 'world');

for (let [key, value] of map) {
  console.log(key + " is " + value);
}

3.反引号(`)标识

模板字符串(template string)是增强版的字符串,用反引号(`)标识。它可以当作普通字符串使用,也可以用来定义多行字符串,或者在字符串中嵌入变量

4.日期正则表达

const RE_DATE = /(?<year>\d{4})-(?<month>\d{2})-(?<day>\d{2})/;

5.函数

大括号被解释为代码块

6.

JavaScript 语言的第七种数据类型,前六种是:undefined、null、布尔值(Boolean)、字符串(String)、数值(Number)、对象(Object),Symbol

主要是数组(Array)和对象(Object),ES6 又添加了Map和Set。这样就有了四种数据集合

7.this 实际指向的是undefined

8_bar方法前面的下划线,表示这是一个只限于内部使用的私有方法

9.编码风格