/ / Nodo vs Chrome, assegnando console.log a una variabile? - node.js, google-chrome, v8, chromium, console.log

Nodo vs Chrome, assegnando console.log a una variabile? - node.js, google-chrome, v8, chromium, console.log

Quando assegno console.log a una variabile in node.js funziona bene,

var l = console.log
l(1) # outputs 1

Tuttavia, se faccio la stessa cosa con gli strumenti di sviluppo di Chromium 30,

var l = console.log
l(1) # TypeError: Illegal invocation

Com'è che non funziona negli strumenti di sviluppo di Chromium? Perché sto ricevendo,

TypeError: invocation illegale

risposte:

6 per risposta № 1

Esattamente perché questo requisito è a posto, non lo so, ma credo che Chrome "s console.log richiede il valore di this essere console. Se vuoi memorizzarlo in una variabile, dovrai vincolare il valore di this:

var l = console.log.bind(console);

4 per risposta № 2

La console Node.js lo fa console.log = console.log.bind(this) nel costruttore.