我試圖創建一個日誌代理,其中每個日誌語句都有一個前綴。調用console.log與應用
我想是這樣做:
customDebug("xxx","yyy");
和木下它會做:
console.debug("prefix","xxx","yyy");
我試圖實現這種方式:
prefixLogArguments: function(arg) {
var array = _.toArray(arg);
array.unshift(this.getPrefix());
return array;
},
customDebug: function() {
var argArray = this.prefixLogArguments(arguments);
console.debug.apply(undefined, argArray);
},
它說Uncaught TypeError: Illegal invocation
,因爲它似乎我們不能調用apply/call
本地代碼,即使未定義的國家噸。
有人能告訴我如何做到這一點?
我可以做console.debug(argArray);
它不是那麼糟糕,但它不會產生相同的結果,因爲它記錄數組而不是記錄參數列表。
上的console.log [類型錯誤非法調用可能重複。應用](http://stackoverflow.com/questions/8159233/typeerror-illegal-invocation-on-console-log-apply) – epascarello