產量返回值的。如果我在一臺發電機,除了提供給yield
關鍵字的權利表達提供一個值next
法,怎麼會是yield
的返回值解決了嗎?分辨率在JavaScript發電機
function* go() {
console.log(yield 'a');
console.log(yield 'b');
}
var g = go();
g.next();
g.next('one');
g.next('two');
輸出:
one
two
Object {value: undefined, done: true}
在輸出的光,所以供給到用於在由表達式返回到的yield
右邊的值的下一個方法的值。
編輯:代碼更新,以更好地反映我的問題。
你是什麼意思的「解決」? – Bergi 2015-04-02 21:40:51
請注意,您可以將您的示例簡化爲'function * go(){console.log(yield'a'); }' – Bergi 2015-04-02 21:42:46
'yield'可能返回的值之間有衝突 - 無論是作爲參數傳遞給next的值,還是表達式返回的yield值關鍵字右邊的值。有哪些規則可以確定哪一個是由收益「返還」的。 – Ben 2015-04-02 21:44:11