以下 js 代码在 firefox、chrome 和 nodejs 的开发者控制台中也失败。无法弄清楚为什么?
function* x() {}
let y = x()
setTimeout(y.next, 100)
火狐中的错误
TypeError:在不兼容的窗口上调用的 CallGeneratorMethodIfWrapped 方法
铬错误
Uncaught TypeError: Method [Generator].prototype.next 在不兼容的接收器上调用 # 在 next()
node.js 中的错误
timers.js:475
timer._onTimeout();
^
TypeError: Method [Generator].prototype.next called on incompatible receiver #<Timeout>
at Timeout.next [as _onTimeout] (<anonymous>)
at ontimeout (timers.js:475:11)
at tryOnTimeout (timers.js:310:5)
at Timer.listOnTimeout (timers.js:270:5)