九州下载 - 系统安卓苹果手机游戏推荐下载网站!

当前位置:九州下载 > 建站问答 >

javascript中throw和next方法的比较

时间:2023-02-26 10:53编辑:九州下载来源:www.wzjsgs.com

1、生成器有throw方法,该方法与next的效果相同。

2、唯一的区别是next方法传输的参数回到正常值。throw方法传输的参数是错误的对象。

并且throw将该迭代器状态设置为迭代结束。

实例

function*generatorFunc(){
console.log('functionstart...')
letres=yield1
console.log('logger-1',res)
res=yield2
console.log('logger-2',res)
res=yield3
console.log('logger-3',res)
return'functionend...'
}

constgenerator=generatorFunc()
generator.next()//执行到yield1语句停止
/**
*print:'functionstart...'
*returns:{value:1,done:false}
*/
//若传递一个错误对象
generator.next(newError('报错啦~'))//执行到yield2语句停止
/**
*print:'logger-1'[错误对象('报错啦~')]
*returns:{value:2,done:false}
*/
generator.throw(newError('报错啦~'))//抛出错误,迭代结束
/**
*print:[错误对象('报错啦~')]
*returns:nothing...
*/
//后续再调用next()返回{value:undefined,done:true}

以上就是javascript中throw和next方法的比较,希望对大家有所帮助。更多Javascript学习指路:Javascript

推荐操作环境:windows7系统、jquery3.2.1版本,DELL G3电脑。

相关文章