2012-09-28 16 views
10

Sto utilizzando gli strumenti di sviluppo di Chrome (v21) per eseguire il debug di un'applicazione javascript di grandi dimensioni. Passando attraverso il codice, vorrei modificare il valore di una variabile locale (scope della funzione). Come faccio a fare questo?Come si modifica il valore di una variabile locale utilizzando gli strumenti di sviluppo di Chrome?

ho provato:

  1. Cliccando sulla variabile nella finestra "Scope" e modificandolo, premendo Invio dopo. Il valore cambia nella finestra Ambito come previsto, ma quando passo alla riga successiva, la variabile ritorna al suo vecchio valore.
  2. Digitazione "variabile = 123" nella console. Dopo aver premuto Invio, il "risultato" della console è il valore inserito, ma la variabile stessa non cambia in valore. Se poi inserisco "variable" e premo Invio, la console restituisce il valore originale; la finestra Scope mostra anche il valore originale ancora.

Ancora una volta, questa è una variabile con ambito funzionale locale e la linea corrente di esecuzione si trova nello stesso ambito in cui è stata definita la variabile.

Questo other question è essenzialmente un duplicato, ma non ha ottenuto alcuna risposta utile (forse perché è scritto male).

+0

+1 - Non mi sono imbattuto in una situazione in cui ho avuto bisogno di farlo, ma è vero, mi sarei aspettato che funzionasse come la 'finestra immediata 'in Visual Studio. Puoi verificare che Chrome v22 sia lo stesso. Hai controllato le segnalazioni di bug di Chrome per vedere se c'è qualcosa di simile in queste righe? Sono sicuro che non è un 'errore' di per sé ... più semplicemente 'comportamento non intuitivo' – BLSully

+0

Utilizzando una diversa variante di parole chiave, sono stato in grado di trovare [un'altra domanda che risponde a questa] (http: // stackoverflow.com/questions/4603021/is-it-possible-to-change-javascript-variable-values-while-debugging-in-google-ch). Deludente che non puoi farlo in Chrome. :( – GreenGiant

+0

Ahimè, non puoi, sono sicuro che c'è già un problema aperto su questo ... Da molto tempo – MaxArt

risposta

2

Questa funzione deve ancora essere implementata. È una cosa assolutamente ragionevole da fare, speriamo che presto venga implementato in V8-protocol-devtools.

Problemi correlati