Abbiamo un'applicazione JavaScript molto grande, in cui dopo molti mesi di codifica è inevitabilmente spuntato un paio di slip slip in cui una variabile viene definita senza utilizzare la parola chiave var
nel modo seguente :Avere interruzione Firebug quando è definita una variabile globale
function() {
x = 5; ...
}
invece di:
function() {
var x = 5; ...
}
Questo sta accadendo da qualche parte - non siamo sicuri dove - e cercando il nome della variabile in questione è difficile, dal momento che è una parola comune che appare 1000s di volte nel nostro sou RCE.
C'è un modo per chiedere a Firebug di interrompere la linea che prima crea una determinata variabile globale? Per chiarire, mi piacerebbe rompere esattamente nel momento in cui window.x
passa da undefined
a un valore definito e all'istruzione break.
Ho provato a creare un'espressione di controllo e spero di poterlo trasformare in un punto di interruzione, ma non riesco a creare espressioni di controllo senza alcun tipo di contesto o ambito.
Se ciò non è possibile con Firebug, sarei interessato a tutto ciò che può realizzare questo in Firefox in generale.
C'è qualcosa di sbagliato nel formattatore del codice? Non riesco a farlo funzionare con il mio esempio. –
sì, devi aggiungere un sacco di spazi prima di ogni riga per averlo formattato - ha avuto lo stesso problema inserendo la mia domanda :) – Maciek
Approccio molto bello (che funziona!), E grazie per avermi fatto scoprire il \ __ defineSetter \ __ " metodo "magico". – Tibo