だから私はコンソール機能を乗っ取った:
var log = Function.prototype.bind.call(console.log, console);
console.log = function (a) {
log.call(console, a);
submitmsg("Log", a);
};
これには望ましい効果があります。ただし、予期しないボーナスとして「未定義」も返します。
なぜここに少し問題があるのかわからない。
Helloworldはlog.call(console, a)
期待どおりに生成されます
submitmsg()
私のカスタム関数です
これは私が望むように正確に機能しています。私が言ったように、私はそれが私が理解していない理由で「未定義」を返すことも少し心配しています。
注:次のコードは、質問への回答としてOPによって投稿されました。回答へのコメントは、質問へのコメントに移動されました。
では、正しいコードは次のようになりますか?
var log = Function.prototype.bind.call(console.log, console);
console.log = function (a) {
return log.call(console, a);
submitmsg("Log", a)
};