Baseline Widely available
La palabra clave function*
puede ser utilizada para definir una función generadora en una expresión.
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"
Sintaxis
function* [nombre]([param1[, param2[, ..., paramN]]]) { sentencias }Parámetros
nombre
Nombre de la función. Puede ser omitido, en cuyo caso la función es anÃnima. El nombre sólo es local al cuerpo de la función.
paramN
Nombre de un parámetro a ser pasado a la función. Una función puede tener hasta 255 argumentos.
sentencias
Sentencias que componen el cuerpo de la función.
Una expresión function*
es muy similar y tiene casi la misma sintaxis que una function* statement
. La principal diferencia entre una expresión function*
y una sentencia function*
es el nombre de la función, que en expresiones function*
puede ser omitido para creaar funciones generadoras anónimas. Para más información vea también el capÃtulo acerca de funciones.
El siguiente ejemplo define una función generadora sin nombre y la asigna a x
. La función produce el cuadrado de su argumento:
var x = function* (y) {
yield y * y;
};
Especificaciones Compatibilidad con navegadores Vea también
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