美文网首页
关于es6新属性yield

关于es6新属性yield

作者: Chihiro_yy | 来源:发表于2021-05-12 10:54 被阅读0次

关于es6新属性yield

yield是Generator函数中中断函数返回的一个属性。Generator函数即一个生成器函数,每次执行next会停止在yield属性。多次调用next会依次执行完yield,直到函数执行完毕。

//Generator函数
function* chain(){
    yield 'a';
    yield 'b';
    yield 'c';
    return 'end';
}
var exp=chain()
//value是yield后面的值,done表示的是当前函数是否执行完毕
console.log(exp.next())//{value: "a", done: false}
console.log(exp.next())//{value: "b", done: false}
console.log(exp.next())//{value: "c", done: false}
console.log(exp.next())//{value: "end", done: true}

next()也可传入参数,即将传入的参数用作上次yield的值

function* num_G(){
let a=1;
    let b=yield (++a);
    let c=yield (++b);
    let d=yield (++c);
    return 'end';
}
var fun=num_G()
var fun1=num_G()
console.log(fun.next())//{value:2,done:false}
console.log(fun.next(1))//{value:2,done:false}
console.log(fun.next(4))//{value:5,done:false}
console.log(fun1.next(2))//{value:2,done:false}

for..of用于Generator

function* chain(){
    yield 'a';
    yield 'b';
    yield 'c';
    return 'end';
}
for(let i of chain()){
console.log(i)
}
//a
//b
//c

相关文章

  • 关于es6新属性yield

    关于es6新属性yield yield是Generator函数中中断函数返回的一个属性。Generator函数即一...

  • 深入理解js中的yield

    yield是什么 yield是ES6的新关键字,使生成器函数执行暂停,yield关键字后面的表达式的值返回给生成器...

  • yield

    yield是什么 yield是ES6的新关键字,使生成器函数执行暂停,yield关键字后面的表达式的值返回给生成器...

  • # 深入理解js中的yield

    yield是什么 yield是ES6的新关键字,使生成器函数执行暂停,yield关键字后面的表达式的值返回给生成器...

  • 解析 ES6 中 yieId 与 Generator

    yieId :yield是 ES6 的新关键字,使生成器函数执行暂停 Generator:(生成器)是ES6标准引...

  • generator

    generator(生成器)是ES6标准引入的新的数据类型. 1、由 function* 定义 2、yield ...

  • js中yield

    在ES6中新增关键字yield,官方介绍如下 The yield keyword is used to pause...

  • ES6——Generator

    ES6 新引入了 Generator 函数,可以通过 yield 关键字,把函数的执行流挂起,为改变执行流程提供了...

  • Generator 函数

    ES6 新引入了 Generator 函数,可以通过 yield 关键字,把函数的执行流挂起,为改变执行流程提供了...

  • ES6新属性

网友评论

      本文标题:关于es6新属性yield

      本文链接:https://www.haomeiwen.com/subject/chfadltx.html