Qual é o objetivo de um asterisco (*) nas funções do gerador ES6
Alguém pode me explicar: por que as funções do gerador no ES6 são marcadas pelo símbolo do asterisco?
Por exemplo, em vez de:
function *someGenerator() {
yield 1;
yield 2;
yield 3;
}
nós poderíamos escrever:
function someGenerator() {
yield 1;
yield 2;
yield 3;
}
ou até:
var someGenerator = () => {
yield 1;
yield 2;
yield 3;
}
var someObject = {
someGenerator() {
yield 1;
yield 2;
yield 3;
}
}
O compilador JS pode detectar quesomeGenerator
contémyield
operador no momento da análise e crie um gerador a partir dessa função.
Por que a detecção deyield
existência não é suficiente?