ES6 生成器函数

一、生成器函数其实就是一个特殊的函数,实习异步编程

javascript 复制代码
function * gen() {
    console.log(111);
    yield '一只没有耳朵';
    console.log(222);
    yield '一只没有尾巴';
    console.log(3333);
    yield '真奇怪';
}

let iterator = gen();
iterator.next();  //执行的是函数开始 ------ yield '一只没有耳朵'中间的部分
iterator.next();  //执行的是yield '一只没有耳朵' ------  yield '一只没有尾巴'中间的部分

// 遍历
for (let v of gen()) {
    console.log(v);   // v是yield后面的部分
}

二、生成器函数的传参

javascript 复制代码
function * gen(arg) {
    console.log(arg);   // AAA
    let one = yield 111;
    console.log(one);   // BBB
    let two = yield 222;
    console.log(two);   // CCC
}

let iterator = gen('AAA');
iterator.next('BBB');
iterator.next('CCC');
相关推荐
Brown.alexis1 天前
es6知识点4-自备使用
前端·javascript·es6
Brown.alexis2 天前
es6知识点5-自备使用
前端·javascript·es6
Brown.alexis4 天前
es6知识点1-自备使用
前端·ecmascript·es6
Brown.alexis4 天前
es6知识点3-自备使用
前端·javascript·es6
代码不加糖9 天前
common.js和es6中模块引l入的区别?
前端·javascript·es6
逍遥德11 天前
ECMAScript 各个版本的语法列表
前端·javascript·ecmascript·es6
宁风NF17 天前
JavaScript:内存、垃圾回收、性能优化
开发语言·前端·javascript·学习·性能优化·es6
sugar__salt1 个月前
Vue.js 前置知识:ES6+ 核心特性完全指南
前端·javascript·vue.js·vue·es6
吃西瓜不吐籽_1 个月前
2026 届前端校招冲刺:2 万字高频面试题库(含详解、追问与评分标准)
前端·javascript·css·typescript·前端框架·es6
888CC++2 个月前
箭头函数(ES6)
前端·javascript·es6