Come si può definire una coppia di funzioni che si richiamano in Javascript, in modo che JS-lint non si lamenta del fatto che "fattoriale" viene utilizzato prima di essere definito?riferimenti circolari tra le funzioni javascript
function factorial1(n) { return factorial(n); }
function factorial(n) { return n === 0 ? 1 : n * factorial1(n - 1); }
Sembra che non ci sia un ordine valido che soddisfi JSlint. (Uno può essere incorporato nell'altro, ma questo sarebbe un incubo per una raccolta di funzioni che si chiamano a vicenda).
Sicuramente questo è gestito dal linguaggio giusto? Questo è solo un bug in JSlint? (Questa domanda deve avere risposta da qualche parte, ma non riesco a trovarla!)
Probabilmente intendevi 'n === 0? 1: ... '. Inoltre, cosa non funziona (tranne l'errore logico che ho già indicato)? – Dogbert
>> Sicuramente questo è gestito dalla lingua giusta? Generalmente dopo qualche tempo la pagina non risponde e il browser visualizza un avviso popup che chiede di interrompere lo script o lasciarlo continuare. – mohkhan
@dobert sì, la tua modifica è corretta. ma il vero problema è che JSlint si lamenta del fatto che "factorial" sta facendo riferimento prima che venga definito. –