Esistono ostacoli tecnici per l'implementazione della sintassi della funzione * () '

1

In Python abbiamo yield che è molto simile a quello che è proposto in ES6 (infatti, le co-routines pythonic erano la principale fonte di ispirazione per l'implementazione delle co-routine in

Mi chiedo quali sono i motivi per scegliere una sintassi separata function* () per i generatori rispetto alla semplice definizione di funzioni "regolari" con yeilds - proprio come in Python, a proposito. Sto parlando rigorosamente di problemi tecnici e peculiarità. Perché è stato deciso che un modulo separato sarà più appropriato?

    
posta shabunc 08.11.2013 - 13:28
fonte

1 risposta

1

Poiché il codice che usa yield normalmente come variabile cambierebbe il suo significato:

function test() {
    var yield = 3;
    return yield + 2 //in current javascript this means return 5 
                     //but if yield syntax was enabled for all 
                     //functions then it would secretly change meaning
}
    
risposta data 08.11.2013 - 13:33
fonte

Leggi altre domande sui tag