Baseline Widely available
yield*
表达å¼ç¨äºå§æç»å¦ä¸ä¸ªgenerator
æå¯è¿ä»£å¯¹è±¡ã
yield* [[expression]];
expression
è¿åä¸ä¸ªå¯è¿ä»£å¯¹è±¡ç表达å¼ã
yield*
表达å¼è¿ä»£æä½æ°ï¼å¹¶äº§çå®è¿åçæ¯ä¸ªå¼ã
yield*
è¡¨è¾¾å¼æ¬èº«ç弿¯å½è¿ä»£å¨å
³éæ¶è¿åçå¼ï¼å³done
为true
æ¶ï¼ã
以ä¸ä»£ç ä¸ï¼g1()
yield
åºå»çæ¯ä¸ªå¼é½ä¼å¨ g2()
ç next()
æ¹æ³ä¸è¿åï¼å°±åé£äº yield
è¯å¥æ¯åå¨ g2()
é䏿 ·ã
function* g1() {
yield 2;
yield 3;
yield 4;
}
function* g2() {
yield 1;
yield* g1();
yield 5;
}
var iterator = g2();
console.log(iterator.next()); // { value: 1, done: false }
console.log(iterator.next()); // { value: 2, done: false }
console.log(iterator.next()); // { value: 3, done: false }
console.log(iterator.next()); // { value: 4, done: false }
console.log(iterator.next()); // { value: 5, done: false }
console.log(iterator.next()); // { value: undefined, done: true }
å§æç»å
¶ä»å¯è¿ä»£å¯¹è±¡
é¤äºçæå¨å¯¹è±¡è¿ä¸ç§å¯è¿ä»£å¯¹è±¡ï¼yield*
è¿å¯ä»¥ yield
å
¶ä»ä»»æçå¯è¿ä»£å¯¹è±¡ï¼æ¯å¦è¯´æ°ç»ãå符串ãarguments
对象ççã
function* g3() {
yield* [1, 2];
yield* "34";
yield* arguments;
}
var iterator = g3(5, 6);
console.log(iterator.next()); // { value: 1, done: false }
console.log(iterator.next()); // { value: 2, done: false }
console.log(iterator.next()); // { value: "3", done: false }
console.log(iterator.next()); // { value: "4", done: false }
console.log(iterator.next()); // { value: 5, done: false }
console.log(iterator.next()); // { value: 6, done: false }
console.log(iterator.next()); // { value: undefined, done: true }
yield*
表达å¼çå¼
yield*
æ¯ä¸ä¸ªè¡¨è¾¾å¼ï¼ä¸æ¯è¯å¥ï¼æä»¥å®ä¼æèªå·±çå¼ã
function* g4() {
yield* [1, 2, 3];
return "foo";
}
var result;
function* g5() {
result = yield* g4();
}
var iterator = g5();
console.log(iterator.next()); // { value: 1, done: false }
console.log(iterator.next()); // { value: 2, done: false }
console.log(iterator.next()); // { value: 3, done: false }
console.log(iterator.next()); // { value: undefined, done: true },
// æ¤æ¶ g4() è¿åäº { value: "foo", done: true }
console.log(result); // "foo"
è§è æµè§å¨å
¼å®¹æ§ åè§
RetroSearch is an open source project built by @garambo | Open a GitHub Issue
Search and Browse the WWW like it's 1997 | Search results from DuckDuckGo
HTML:
3.2
| Encoding:
UTF-8
| Version:
0.7.4