我们来设计一个简单无比的需求
比如我要通过简单的函数来返回
1.我的名字(zhangsan)
2.我的年龄(18岁 )
往往我们需要写2个函数,如function showName/showAge
或者我们通过一个函数来返回对象
function showMe(){
return {name:"zhangsan",age:18};
}
但是ES2015有了生成器Generator
function *showMe()
{
let [name,age] = ["zhangsan",18];
yield name;
yield age;
}
let me = showMe();
console.log(me.next().value);//zhangsan
console.log(me.next().value);//18
概念了解
生成器中最重要的过程就是yield语句。
而yield的作用是”切出当前函数运行时”(比较难理解,姑且可以理解为从线程切换到协程)
本文介绍了一种使用ES2015的Generator特性简化数据返回的方法。传统上,为了返回多个数据,可能需要定义多个函数或返回一个对象。而Generator通过yield关键字实现了更简洁的方式,只需一个函数即可按需返回多个值。

被折叠的 条评论
为什么被折叠?



