2
我想克隆console.log
方法引入的功能。我们称之为log
。克隆的console.log功能
我想:
log = console.log;
log (1);
> TypeError: Illegal invocation
这仅在客户端发生。我正常工作的NodeJS控制台上:
$ node
> log = console.log
[Function]
> log ("Hello World!")
Hello World!
undefined
的第一个问题是为什么:在它在服务器端而不是客户端上正常工作?
我想重写console.log
方法,但之后,我将其保存到另一个变量。
oldLog = console.log;
console.log = function() {
/* do my stuff */
oldLog.apply(this, arguments);
}
我该如何解决?
@cookiemonster相关。我问为什么在NodeJS上它工作正常。 –
你在一个问两个不同的问题。这是你的其中一个问题的重复。至于它为什么在NodeJS中工作,为什么不呢?有ECMAScript中没有定义'console',所以其行为(或存在)完全实现有关。 –
@IonicăBizău:因为它必然有明确的。顺便说一句,在Opera的客户端也是如此。 – Bergi