我的网站上有一些 console.log 命令。
是否可以用我自己的函数覆盖 console.log?我想自定义该函数,以便它仅在特定变量设置为 true 时记录。
最后,我仍然需要从这个函数调用真正的 console.log。
谢谢凯文
我的网站上有一些 console.log 命令。
是否可以用我自己的函数覆盖 console.log?我想自定义该函数,以便它仅在特定变量设置为 true 时记录。
最后,我仍然需要从这个函数调用真正的 console.log。
谢谢凯文
只需创建一个闭包,并将原始console.log
函数存储在局部变量中。
然后覆盖console.log
,并在您检查后调用原始函数:
(function(){
var original = console.log;
console.log = function(){
if ( log ) { // <-- some condition
original.apply(this, arguments);
}
};
})();
这是小提琴:http: //jsfiddle.net/J46w8/
先保存旧的console.log()
。
var reallog = console.log;
console.log = function(s) {
if(s == "a") {
reallog("a");
}
}
console.log("b");
console.constructor.prototype.log = function(msg) {
alert(msg);
};