我有一个用条件包装 console.log 的实用程序函数,所以如果我们在开发环境中并且 console.log 存在,我们只调用 console.log :
/* Console log if environment has debug true or #debug initially passed in URL */
metro.conlog = (function () {
return function (message) {
if ((metro.siteData.debug || metro.hashOptions.hasOwnProperty('debug')) && window.console && message) {
console.log(message);
}
};
}());
这对于普通的控制台日志非常有效。但我最近发现了将多个参数传递给 console.log 的乐趣:它允许您在控制台日志前加上一个字符串,因此console.log('DEBUG', object)
输出字符串和一个可扩展对象,您可以检查其属性。如何更改我的 conlog 函数来执行此操作?我试过注销所有这样的参数:
metro.conlog = (function () {
return function (message) {
if ((metro.siteData.debug || metro.hashOptions.hasOwnProperty('debug')) && window.console && message) {
console.log(arguments);
}
};
}());
但这会将参数输出为数组,而不是使用 console.log 获得的简洁行。您可以在此屏幕截图中看到不同之处:
谁能告诉我如何重现原始日志输出?