Was passiert in ES6 mit den Argumenten im ersten Aufruf der `next` -Methode eines Iterators?
Wenn Sie einen Generator wie haben,
function* f () {
// Before stuff.
let a = yield 1;
let b = yield 2;
return [a,b];
}
Und dann renn
var g = f();
// this question is over this value.
g.next(123); // returns: { value: 1, done: false }
g.next(456); // returns: { value: 2, done: false }
g.next(); // returns: { value: [ 456, undefined ], done: true }
Der erste Anruf bei.next()
zu setzena
zu123
und der zweite Anruf zu setzenb
zu456
allerdings beim letzten anruf an.next()
das ist rückkehr,
{ value: [ 456, undefined ], done: true }
Macht das Argument beim ersten Aufruf zug.next
Hau ab? Was passiert mit ihnen? Wie stelle ich anhand des obigen Beispiels ein?a
?