ES6 基础入门笔记

1. 变量解构赋值 

let obj = {
  p: [
    'Hello',
    { y: 'World' }
  ]
};

let { p: [x, { y }] } = obj;
x // "Hello"
y // "World"

p是模式,不是变量,因此不会被赋值。

let obj = {
  p: [
    'Hello',
    { y: 'World' }
  ]
};

let { p, p: [x, { y }] } = obj;
x // "Hello"
y // "World"
p // ["Hello", {y: "World"}]

2. 字符串扩展

includes():返回布尔值,表示是否找到了参数字符串。

startsWith():返回布尔值,表示参数字符串是否在原字符串的头部。

endsWith():返回布尔值,表示参数字符串是否在原字符串的尾部。

3. 正则表达式

组匹配和解构赋值

let {groups: {one, two}} = /^(?<one>.*):(?<two>.*)$/u.exec('foo:bar');
one  // foo
two  // bar

4. 箭头函数

箭头函数里面根本没有自己的this,而是引用外层的this。 

5. Symbol

第七种数据类型,不能使用new,可用作私有变量。

Object.getOwnPropertySymbols(); 返回symbol的一个数组。

6. set 和 map

map 的遍历顺序就是插入顺序。

7. Proxy 和 Reflect

Proxy 和 Reflect 方法一一对应,

第一个参数为对象,否则报错。

8. Decorator

修饰器只用于类和类的方法,不用于函数,函数存在提升。

9. Promise

Promise.resolve 将现有对象转换为Promise对象。

Promise.resolve 方法允许调用时不带参数,直接返回一个resolved状态的 Promise 对象。

猜你喜欢

转载自blog.csdn.net/foradmin/article/details/82729725