2020-02-27

                                                ES6知识点总结


1let与cont

(1)let

1.有用只能在一对{}里面

2不会变量提升

3.不能重复声明

(2)const

声明必须赋值

2.赋值不能修改

3建议变量名大小

(2)结构

对象

基本

let[name,age]={name:”mumu“,age:18}

let{name:foo}={name:"mumu"}

剩余值

默认值

没有顺序

变量名必须和对象的键名一致

(3)数组

基础

let[a,b]=[12,18];

可以箱套

let[a,b[c,d,e]]=[1,2,[3,4,5]]

也可以忽略

let[a....rest=[1,2,3,4]

res[2,3,4]

剩余值

字符串

默认值

空白

triim()

trimLeft()

trimRight()

去掉空白,左边留白,右边留白

检测包含

includes(s)

字符串是否包含s

starsWith(s)

是否以s开头

endsWith(s)

是否有s结尾

重复

repeat(n)

将字符串 重复n次

填充

padEnd(len,s)

以s字符串补齐长度从后面

模板

1.符号

2也可以在字符串模板里面任意换行

3.单双隐特殊符号不需要转义

4函数

箭头函数

函数的简写

4特点

1.=>左边是函数的参数

2.=>右边是函数的执行语句  也是返回值

3.=>如果参数不是一个用()包裹参数

4.=>如果执行语句有多条用{}

5.=>如果执行语句多条 ,返回用return()

子主题 6

默认参数

function add(a=1,b=1){

alert(a+b)

}

add(4,5)

add()

不定参

function add()

5对象

1.对象的简写(变量名和对象的键一致时候)

2.对象的属性的表达式[]

3.对象的拷贝合并object.assign()

4.对象的扩展

6map

特点

1.有顺序

2.键名也可以是任意类型

3.size 长度

初始化

var map=new Map([[key,val]].[key2.val2])

`方法

set(k,v)设置

get(k,v)获取

delet(k)删除

属性

size长度

遍历

转数组

展开合并

7set

不重复的数组

初始化 new set([])

·方法

add()添加

has()检测

delete()删除

属性size长度

转数组

遍历 for of

8类

定义:创造实力对象的模板

class 类名{}

class Animal{}

constructor(){}

构造函数

constructor(name,color){}

say(){}

一般方法

new d1= new Animal();

d1.say()

静态方法

Static price=100;

Animal.price

继承

class 类名 extends 父类名{}

super()

getrer setter

1.成对出现

2.不能够直接赋值和设置已经有的属行

consturctor(age){

this.age=age;

}

get Age(){

return this.age;

}

d1.Age 调用大写的Age属行是会执行get Age()

这个函数返回的小写age值

set  Age(val){

this.age=val

}

当d1.Age=15抵用set Age这个方法最终设置是小写age的值

9模块

导出

export

1.基本

export{name,age,Animal}

2.使用as

export{Animal ad An}

3.default  默认

export default  Animal;

2.import

导入

1.基本

import{name,age,Anima;}from ".xx/js"

import 也可以使用 as

10Promise

生成器

定义:返回一个延期的承诺,用then来接受结果

resolve 解决

reject 拒绝

作用

1.按顺序执行异步调用

2.避免回调函数多层箱套

3.race 有一个resolve 才调用then方法

11proxy

可以对目标对象的读取调用....进行拦截

1.目标对象

2.处理

3.let proxy=new Proxy(target.handler)

处理函数

set

get

has()

ownkeys

11Reflect

反射

对象进行一些操作,方便代理处理

常用

let handler={

get(target,key)

}

Reflect.set(obj.key.value)获得对象键的列表

Reflect.set(obj,key,value)设置对象的值

Reflect get(obj,key,)获取对象的值

Reflect has(obj,key)检测是否有某个值

你可能感兴趣的:(2020-02-27)