AsyncGeneratorFunction
Baseline
Widely available
This feature is well established and works across many devices and browser versions. Itâs been available across browsers since 2020å¹´1æ.
AsyncGeneratorFunction ãªãã¸ã§ã¯ãã¯ãéåæã¸ã§ãã¬ã¼ã¿ã¼é¢æ°ã®ã¡ã½ãããæä¾ãã¾ãã JavaScript ã§ã¯ããã¹ã¦ã®éåæã¸ã§ãã¬ã¼ã¿é¢æ°ã¯å®éã«ã¯ AsyncGeneratorFunction ãªãã¸ã§ã¯ãã§ãã
ãªããAsyncGeneratorFunction ã¯ã°ãã¼ãã«ãªãã¸ã§ã¯ãã§ã¯ããã¾ããã以ä¸ã®ã³ã¼ãã§åå¾ã§ãã¾ãã
const AsyncGeneratorFunction = async function* () {}.constructor;
AsyncGeneratorFunction 㯠Function ã®ãµãã¯ã©ã¹ã§ãã
試ãã¦ã¿ã¾ããã
const AsyncGeneratorFunction = async function* () {}.constructor;
const foo = new AsyncGeneratorFunction(`
yield await Promise.resolve('a');
yield await Promise.resolve('b');
yield await Promise.resolve('c');
`);
let str = "";
async function generate() {
for await (const val of foo()) {
str += val;
}
console.log(str);
}
generate();
// äºæ³ãããçµæ: "abc"
ã³ã³ã¹ãã©ã¯ã¿ã¼
AsyncGeneratorFunction()-
æ°ãã
AsyncGeneratorFunctionãªãã¸ã§ã¯ããçæãã¾ãã
ã¤ã³ã¹ã¿ã³ã¹ããããã£
親ã§ãã Function ããç¶æ¿ããã¤ã³ã¹ã¿ã³ã¹ããããã£ãããã¾ãã
ãããã®ããããã£ã¯ AsyncGeneratorFunction.prototype ã§å®ç¾©ããã¦ããããã¹ã¦ã® AsyncGeneratorFunction ã¤ã³ã¹ã¿ã³ã¹ã§å
±æããã¾ãã
AsyncGeneratorFunction.prototype.constructor-
ãã®ã¤ã³ã¹ã¿ã³ã¹ãªãã¸ã§ã¯ããçæããã³ã³ã¹ãã©ã¯ã¿ã¼é¢æ°ã§ãã
AsyncGeneratorFunctionã¤ã³ã¹ã¿ã³ã¹ã«ããã¦ã¯ãåæå¤ã¯AsyncGeneratorFunctionã³ã³ã¹ãã©ã¯ã¿ã¼ã§ãã AsyncGeneratorFunction.prototype.prototype-
ãã¹ã¦ã®éåæã¸ã§ãã¬ã¼ã¿é¢æ°ã¯åã
prototypeããããã£ãå ±æãã¦ãã¦ãããã¯AsyncGenerator.prototypeã§ããasync function*æ§æã¾ãã¯AsyncGeneratorFunction()ã³ã³ã¹ãã©ã¯ã¿ã¼ã§çæãããããããã®éåæã¸ã§ãã¬ã¼ã¿ã¼é¢æ°ããèªèº«ã®prototypeããããã£ãä¿æãã¾ãããã®ããããã£ã®ãããã¿ã¤ãã¯AsyncGeneratorFunction.prototype.prototypeã§ããéåæã¸ã§ãã¬ã¼ã¿ã¼é¢æ°ãå¼ã³åºãããã¨ããã®prototypeããããã£ã¯è¿ãããéåæã¸ã§ãã¬ã¼ã¿ã¼ãªãã¸ã§ã¯ãã®ãããã¿ã¤ãã¨ãªãã¾ãã AsyncGeneratorFunction.prototype[Symbol.toStringTag]-
[Symbol.toStringTag]ããããã£ã®åæå¤ã¯æåå"AsyncGeneratorFunction"ã§ãããã®ããããã£ã¯Object.prototype.toString()ã§ä½¿ç¨ãã¾ãã
以ä¸ã®ããããã£ã¯ãããããã® AsyncGeneratorFunction ã¤ã³ã¹ã¿ã³ã¹ãèªèº«ã§æã¤ããããã£ã§ãã
ã¤ã³ã¹ã¿ã³ã¹ã¡ã½ãã
親ã§ãã Function ããã¤ã³ã¹ã¿ã³ã¹ã¡ã½ãããç¶æ¿ãã¦ãã¾ãã
仿§æ¸
| Specification |
|---|
| ECMAScript® 2027 Language Specification> # sec-asyncgeneratorfunction-objects> |