2011-09-08 19 views
18

C'è un modo per modificare il codice JavaScript durante il debug? Visual Studio ha "Modifica e continua" e lo scambio di codice simile può essere eseguito in Java e in altre lingue. Questo può essere fatto con JavaScript, e se sì, come?Come modificare il codice javascript in fase di esecuzione?

+1

Puoi nel debugger di Chrome, vedere la risposta in alto su http://stackoverflow.com/questions/5067532/editing-in-chrome-debugger –

+0

@Adam: pubblicala come risposta! – icktoofay

+0

Ho fatto! È stato contrassegnato come banale e convertito in commento! Non so come contrassegnare la domanda come un duplice :( –

risposta

11

Chrome, Safari, e alcuni altri browser basati su WebKit contengono una funzionalità in Web Inspector nota come Live Edit. Se vai al pannello Script e sei fermo su un punto di interruzione (o forse anche se non è stato fermato su un punto di interruzione - non ne sono sicuro), puoi fare doppio clic su una riga e iniziare a modificarla. Le modifiche apportate avranno effetto sulla sceneggiatura.

+3

Sei sicuro? La modifica live è rotta in google chrome per circa 2 anni! – puchu

+3

@puchu: hai ragione, non sembra funzionare più. Ha funzionato quando ho postato la risposta quattro anni fa ... – icktoofay

2

Se si parla di debugging, è molto semplice modificare il codice in esecuzione. Nella tua console di debug, puoi inserire espressioni Javascript e verrà eseguito nel contesto della finestra, che contiene tutti gli oggetti e le funzioni del tuo codice, in modo da poterli scambiare ridefinendoli.

9

Con gli strumenti per sviluppatori di Chrome, questo è semplicissimo.

Basta aprire l'ispettore, fare clic sulla scheda scripts, selezionare quale si desidera dal menu a discesa e quindi si è liberi di modificare lo script e aggiungere punti di interruzione. Se aggiorni la pagina, i punti di interruzione rimarranno lì.

Se si guarda questo discorso, ma Paul irlandese, egli mostra come è possibile modificare uno script al volo

http://paulirish.com/2011/a-re-introduction-to-the-chrome-developer-tools/

anche un bene:

http://blip.tv/jsconf/jsconf2011-paul-irish-5382827

+2

C'è [Firebug] (http://getfirebug.com/) per il browser Firefox – sanmai

+0

Sì, firebug è anche molto buono :) – wesbos

+1

Ok Non ho guardato il video ma so come usare la console per eseguire javascript al volo e modificare al volo una definizione di funzione. Ma questo non è ciò che desidero. Mi piacerebbe essere in grado di modificare lo script all'interno della console del debugger, proprio come potrei nel mio editor javascript preferito. È possibile? – theninjagreg

0

Poiché JavaScript può modificare il DOM, in pratica è necessario modificare il file JavaScript, salvarlo e ricaricarlo. Per me, mi piace IE, quindi eseguo la pagina Web in una modalità NON IN DEBUG del browser. Quindi puoi cambiare i file di script, SALVA loro. torna al browser e ricarica (F5) per vedere le tue modifiche. Presumibilmente IE 11 ha questa capacità (probabilmente come Chrome, che è essenzialmente quello che sto facendo, cambiando il modo di salvare il ricaricamento da quello che posso dire) ma non riesco a trovarlo, per non parlare di aprire un file js. UI super povera. Sto indovinando il browser per aprire l'icona del file è enter image description here ma è sempre in grigio.

Problemi correlati