Test Foro de elhacker.net SMF 2.1

Programación => Desarrollo Web => Mensaje iniciado por: patilanz en 10 Octubre 2015, 14:07 PM

Título: [Resuelto] [JS] console.log = function(){} recuperar
Publicado por: patilanz en 10 Octubre 2015, 14:07 PM
Hola, si alguien ejecuta
Código (javascript) [Seleccionar]
console.log = function(){}
console.warn = function(){}
...


Como puedo recuperar estas funciónes ?

Un saludo
Título: Re: [JS] console.log = function(){} recuperar
Publicado por: #!drvy en 10 Octubre 2015, 15:31 PM
Código (javascript,5,6,7,8,9) [Seleccionar]
console.log('hola');
console.log = function(){};
console.log('nadie me quiere');

var iframe = document.createElement("iframe");
document.documentElement.appendChild(iframe);
var _window = iframe.contentWindow;
console.log = _window.console.log;
document.documentElement.removeChild(iframe);

console.log('mundo');
// hola
// mundo


http://stackoverflow.com/questions/8580431/recovering-built-in-methods-that-have-been-overwritten

Saludos
Título: Re: [JS] console.log = function(){} recuperar
Publicado por: ivancea96 en 10 Octubre 2015, 20:50 PM
Si no modificas el prototipo, puedes hacer:
Código (javascript) [Seleccionar]
console.log = Console.prototype.log;

EDITO: Por eficiencia, diría que mejor:
Código (javascript) [Seleccionar]
delete console.log
Título: Re: [JS] console.log = function(){} recuperar
Publicado por: patilanz en 11 Octubre 2015, 13:32 PM
Gracias, funcionan todos los métodos aunque en este caso el prototype también se quitaba.