2013-03-17 13 views

risposta

13

si potrebbe eseguire l'override funzione standard console.log() con il proprio, aggiungendo lo yo comportamento u bisogno di:

console.oldLog = console.log; 

console.log = function(value) 
{ 
    console.oldLog(value); 
    window.$log = value; 
}; 

// Usage 

console.log('hello'); 

$log // Has 'hello' in it 

In questo modo, non c'è bisogno di modificare il codice di registrazione esistente. Si potrebbe anche estenderlo aggiungendo un array e memorizzando l'intera cronologia di oggetti/valori stampati.

+0

impressionante. Grazie – Dru

2

Qui è chrome reference per comand line api. C'è variabile $ _, ma "Restituisce il valore dell'espressione più recentemente valutato" stampata, è possibile effettuare la propria funzione di log in questo modo:

function log(data){ 
    console.log(data); 
    return data; 
} 
// after that you can access last printed value by $_ 

prega di notare che la mia funzione è per esempio, console possibilità di log è molto più avanzato

15

nei tool di sviluppo Chrome, è possibile accedere ultimo elemento da $_:

> 1+1; 
    2 
> $_ 
    2 
+1

Grazie @stewie, ma questo non funziona per gli oggetti stampati da console.log (+1 perché non sapevo su questa funzione) – Dru

2

Derivato della risposta di mirrormx, ma più conveniente. Non ho bisogno di scrivere una funzione e posso semplicemente metterla in qualsiasi punto del momento.

console.log(window.$log = data); 
10

Se si desidera eseguire questa operazione su un oggetto che è già stato registrato (una cosa sola), la console di cromo offre una buona soluzione.

Posiziona il mouse sopra l'oggetto stampato nella console, fai clic con il pulsante destro del mouse, quindi fai clic su "Store as Global Variable". Chrome lo assegnerà a un nome var temporaneo per te che puoi utilizzare nella console.

enter image description here

+0

Questo ha bisogno di più uptotes! Metà delle risposte non risolve nemmeno la domanda vera e questo è esattamente questo. Ammettiamolo: l'override di 'console.log' è un problema, e non mi ricordo di averlo fatto * prima * di voler guardare questa cosa che è stata registrata. – Thanatos

Problemi correlati