function* expression
Baseline
Widely available
This feature is well established and works across many devices and browser versions. Itâs been available across browsers since 2016ë 9ì.
function* keyword ë ííì ë´ìì generator function ì ì ìí©ëë¤.
ìëí´ ë³´ê¸°
const foo = function* () {
yield "a";
yield "b";
yield "c";
};
let str = "";
for (const val of foo()) {
str = str + val;
}
console.log(str);
// Expected output: "abc"
Syntax
function* [name]([param1[, param2[, ..., paramN]]]) {
statements
}
Parameters
name-
í¨ìëª . ìëµíë©´, ìµëª í¨ìê° ë©ëë¤. í¨ìëª ì í¨ìë´ìë§ íì ë©ëë¤.
paramN-
í¨ìì ì ë¬ëë ì¸ìì ì´ë¦. í¨ìë ìµë 255 ê°ì ì¸ì를 ê°ì§ ì ììµëë¤.
statements-
í¨ìì 본체를 구ì±íë 구문ë¤.
Description
function* expression ì function* statement ê³¼ ë§¤ì° ì ì¬íê³ íìë ê°ìµëë¤. function* expression ê³¼ function* statement ì 주ìí ì°¨ì´ì ì í¨ìëª
ì¼ë¡, function* expressions ììë ìµëª
í¨ìë¡ ë§ë¤ê¸° ìí´ í¨ìëª
ì´ ìëµë ì ììµëë¤.ë³´ë¤ ìì¸í ë´ì©ì functions ì 참조íììì¤.
Examples
ìëì ìì ë ì´ë¦ì´ ìë generator function ì ì ìíê³ ì´ë¥¼ x ì í ë¹í©ëë¤. function ì ì¸ìë¡ ë¤ì´ì¨ ê°ì ì ê³±ì ìì°(yield)í©ëë¤.
var x = function* (y) {
yield y * y;
};
ëª ì¸ì
| Specification |
|---|
| ECMAScript® 2027 Language Specification > # sec-generator-function-definitions > |