/*
function* fn(){
console.log(this);
return 10
}
fn.prototype.name = '小林'
// 普通函数执行 返回这个函数的一个实例 但是函数内部的代码并没有执行
let itor = fn()
console.log(itor);
// 调用itor.next方法才会将fn中的代码执行 并放回一个对象{ value: 10, done: true }
console.log(itor.next());
*/
// =========================================
/*
function* generator() {
console.log("A");
yield 10;
console.log("B");
yield 20;
console.log("C");
yield 30;
console.log("D");
return 40;
}
let itor = generator()
// 每一次执行next,遇到yield则结束 yield 后面放的值 就是输出的value的值
console.log(itor.next()); // 'A' { value: 10, done: false }
// 提前中断函数的执行
console.log(itor.return(10)); // { va
生成器函数generator常规语法
最新推荐文章于 2023-08-26 15:15:37 发布