Baseline Widely available
GeneratorFunction
ã³ã³ã¹ãã©ã¯ã¿ã¼ã¯ãæ°ããã¸ã§ãã¬ã¼ã¿ã¼é¢æ°ãªãã¸ã§ã¯ããçæãã¾ãã JavaScript ã§ã¯ããã¹ã¦ã®ã¸ã§ãã¬ã¼ã¿ã¼é¢æ°ãå®éã« GeneratorFunction
ãªãã¸ã§ã¯ãã§ãã
GeneratorFunction
ã¯ã°ãã¼ãã«ãªãã¸ã§ã¯ãã§ã¯ãªããã¨ã«æ³¨æãã¦ãã ãããæ¬¡ã®ã³ã¼ããè©ä¾¡ãããã¨ã«ãã£ã¦å¾ããã¾ãã
Object.getPrototypeOf(function* () {}).constructor;
試ãã¦ã¿ã¾ããã
const GeneratorFunction = function* () {}.constructor;
const foo = new GeneratorFunction(`
yield 'a';
yield 'b';
yield 'c';
`);
let str = "";
for (const val of foo()) {
str = str + val;
}
console.log(str);
// Expected output: "abc"
æ§æ
new GeneratorFunction ([arg1[, arg2[, ...argN]],] functionBody)弿°
arg1, arg2, ... argN
å½¢å¼çãªå¼æ°åã¨ãã¦é¢æ°ã«ä½¿ç¨ãããååã§ãããããããæå¹ãª JavaScript ã®èå¥åã§ããããã«ã³ãã§åºåã£ãæååã®ãªã¹ãã§ãä¾ãã° "x
", "theValue
", "a,b
" ãªã©ã§ãã
functionBody
颿°å®ç¾©ãæ§æãã JavaScript æãå«ãæååã
GeneratorFunction
ã³ã³ã¹ãã©ã¯ã¿ã¼ã§çæãããã¸ã§ãã¬ã¼ã¿ã¼é¢æ°ãªãã¸ã§ã¯ãã¯ã颿°ãçæãããã¨ãã«ãã¼ã¹ããã¾ããããã¯ãã¸ã§ãã¬ã¼ã¿ã¼é¢æ°ã function* å¼
ã§å®ç¾©ãã¦ããã³ã¼ãå
ã§å¼ã³åºãæ¹æ³ã»ã©å¹ççã§ã¯ããã¾ãããã¨ããã®ãããã®ãããªé¢æ°ã¯ã³ã¼ãã®æ®ãã®é¨åã¨å
±ã«ãã¼ã¹ãããããã§ãã
颿°ã«æ¸¡ããããã¹ã¦ã®å¼æ°ã¯ã渡ãããé ã«ã使ããã颿°å ã®å¼æ°ã®èå¥åã®ååã¨ãã¦æ±ããã¾ãã
ã¡ã¢: ã¸ã§ãã¬ã¼ã¿ã¼é¢æ°
ã GeneratorFunction
ã³ã³ã¹ãã©ã¯ã¿ã¼ã«ãã£ã¦çæãããå ´åãçæã³ã³ããã¹ãã®ã¯ãã¼ã¸ã£ã¯ä½æããã¾ããã常ã«ã°ãã¼ãã«ã¹ã³ã¼ãã«çæããã¾ãã
å®è¡ããã¨ããã¼ã«ã«å¤æ°ã¨ã°ãã¼ãã«ã°ãã¼ãã«å¤æ°ã«ã®ã¿ã¢ã¯ã»ã¹ã§ãã GeneratorFunction
ã³ã³ã¹ãã©ã¯ã¿ã¼ãå¼ã³åºãããã¹ã³ã¼ãã®å¤æ°ã«ã¯ã¢ã¯ã»ã¹ã§ãã¾ããã
ããã¯ãã¸ã§ãã¬ã¼ã¿ã¼é¢æ°å¼ã®ã³ã¼ãã§ eval
ã使ç¨ããå ´åã¨ã¯ç°ãªãã¾ãã
GeneratorFunction
ã³ã³ã¹ãã©ã¯ã¿ã¼ã (new
æ¼ç®åã使ç¨ããã«) 颿°ã¨ãã¦å¼ã³åºããå ´åãã³ã³ã¹ãã©ã¯ã¿ã¼ã¨ãã¦å¼ã³åºããã¨ãã¨åã广ãããã¾ãã
var GeneratorFunction = Object.getPrototypeOf(function* () {}).constructor;
var g = new GeneratorFunction("a", "yield a * 2");
var iterator = g(10);
console.log(iterator.next().value); // 20
仿§æ¸ ãã©ã¦ã¶ã¼ã®äºææ§ é¢é£æ
å ±
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