ES6第三讲

十四、异步与等待async和await

1.
async function say(){
    return 'abc'
}
say().then(res=>{})
2.async装饰的函数返回的是一个promise对象
3.await
只能在函数async中使用
当函数遇到await等待await结果,再往下执行
4.async function doit(){
    var m1 = await say('msg',1000);
    var m2 = await say('msg2',1000);
        return m1+m2;
}
doit().then(res=>console.log(res))

十五、Symbol

1.符号;不重复;不可修改
2.可以是sym作为唯一的key或者标识符

十六、迭代器

1.可迭代对象都拥有迭代器(可以被for of 遍历的元素都是可迭代对象 )string arrar set map
2.获取迭代对象var itr = [Symbol.iterator]
3.通过next方法进行迭代
itr.next()
{value:'xxx',done:false}
...
{value:undefind,done:true}

十七、生成器

1.普通函数前面添加*
通过yield关键来控制生成
最终函数执行返回一个可迭代元素
2.function *range(start,end,step){
    while(start<step){
    yield start;
    start+=step;
}}
3.生成一个1-100的可迭代元素
var list = range(1,100);
转换为数组
list = [...list]
当函数执行到yield关键字会等待


十八、代理

1.对原对象操作的劫持
2.var p = new Proxy(obj,{
    get(target,prop){return targe[prop]},
    set(target,prop,value){target[prop]=value}
})
3.p.msg 会执行get方法
4.p.msg='abc'会执行set方法
5.我们k可以再get和set方法里面做一些判断劫持等其他操作

评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值