ecma6学习知识点(十一)symbol & generator

  1. Symbol 是一个单独的数据类型
    定义: let sym = Symbol(“aaa”);
    console.log(sym)
    //结果为Sysbol(aaa);
    typeof sym === symbol
    注意:
    1.Symbol不能new
    2.Symbol()返回是一个唯一值,坊间传说做一个key 定义一些唯一或者私有的东西
    如 let sym = Symbol(“aaa”);
    let jsoon = {
    [sym] : “test”
    }
    3.symbol是一个单独数据类型,就叫symbol,是基本类型
    4.如果symbol作为key,用for in循环,出不来
  2. generator函数
    生成器,解决异步,深度嵌套的问题,async
    语法
    function * show(){
    yield “wlecome”;
    yield “to”;
    yield “beijing”;
    return “chishi”
    }
    let g1 = show();
    console.log(g1.next()) // {value: “wlecome”, done: false} done是指接下来是否还有yield

上述调用,手动调用,麻烦
可以用 for of 循环
for (let val of g1) {
return 的东西不会遍历。
}
1.解构赋值 let 【a,b,c】 = show();
2.扩展运算符let 【a,…b】 = show();
let a = …show();
3.Array.from()
console.log(Array.from(show()));

  1. ================例子
function * gen(){
	let val  = yield "aaa";
	yield axios.get("https://apo.github.com/usrs/${val}")
	}
	let g1 = gen();
	let username = g1.next().value;
	g1.next(username).value.then(res => {
			console.log(res.data);
})
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

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

抵扣说明:

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

余额充值