Ho notato che con Firefox/Firebug (il mio ambiente di sviluppo principale), alcuni errori producono tracce di stack, mentre altri no. All'inizio ho pensato che questo avesse qualcosa a che fare con se ho generato l'errore (ad esempio new Error ("foo")) o se Javascript lo ha generato (ad esempio undefinedFoo + = 1), ma ho notato che sta accadendo con entrambi i tipi di errori.Con Firefox/Firebug, Perché ottieni solo stacktraces con alcuni errori
Quindi, la mia domanda è, qualcuno sa che cosa causa questo? È casuale o c'è qualche schema/logica? Solo Firefox e/o Firebug sono zoppi o altri browser lo fanno? E, cosa più importante, c'è qualcosa che posso fare per controllarlo (in particolare per farmi sempre dare le tracce dello stack)?
Questa non è una domanda cruciale (dato che posso sempre lanciare un "console.trace()" appena prima che si verifichi l'errore), ma sono curioso se qualcuno conosce la risposta.
********** ********** EDIT
ho trovato questa discussione: http://groups.google.com/group/firebug/browse_thread/thread/1f32df8b96ec1d30/64b9074cb99056c2?pli=1 che menziona che Firefox non fornisce Firebug con stacktraces se la l'errore non è un'istanza di errore. In altre parole, se lanci qualcosa che non è un nuovo errore ("pippo"), non otterrai uno stacktrace.
Tuttavia, questo non mi aiuta, poiché non vedo gli stacktraces neanche quando lancio un nuovo Errore().
Anche se dubito che sia importante, dovrei probabilmente menzionare che sono su Linux (nella remota possibilità che Firefox abbia un bug specifico per Linux con la perdita dello stacktrace). – machineghost
Sono l'unico a vedere errori di stack-trace-less in Firefox? O gli altri li vedono, e nessuno sa perché Firefox lo fa? – machineghost
Ho trovato una risposta parziale. Si scopre che Firebug ha una preferenza "segreta" (ad esempio about: config) che non mostra stacktraces: extensions.firebug.showStackTrace. Quando ho controllato il mio about: config, ho scoperto che questa preferenza era impostata su false (il che è strano, dato che non ricordo di averlo mai fatto ...). Tuttavia, anche con esso impostato su true (e anche dopo aver riavviato Firefox) non vedo ancora tracce di stack su alcuni errori :-( – machineghost