Expressão function*
A palavra-chave function*
pode ser usada para definir uma função generator dentro de uma expressão.
Sintaxe
function* [nome]([param1[, param2[, ..., paramN]]]) { declarações }
nome
-
O nome da função. Pode ser omitido, no caso da função ser anônima. O nome é local apenas para o corpo da função.
paramN
-
O nome de um argumento para ser passado para a função. Uma função pode ter até 255 argumentos.
declarações
-
As declarações que compõem o corpo da função.
Descrição
Uma expressão function*
é muito similar e tem quase a mesma sintaxe que a declaração function*
. A principal diferença entre uma expressão function*
e a declaração function*
é o nome da função, que pode ser omitido em expressões function*
para criar funções anônimas. Veja também o capítulo sobre funções para mais informações.
Exemplos
O exemplo a seguir define uma função generator e atribui à variável x
. A função faz um yield do quadrado do seu argumento:
var x = function*(y) {
yield y * y;
};
Especificações
Especificação | Situação | Comentário |
---|---|---|
ECMAScript 2015 (6th Edition, ECMA-262) The definition of 'function*' in that specification. |
Padrão | Definição inicial. |
ECMAScript (ECMA-262) The definition of 'function*' in that specification. |
Padrão em tempo real |
Compatibilidade com navegadores
BCD tables only load in the browser