JavaScript的。格式化console.log

时间:2014-11-28 13:23:05

标签: javascript debugging firebug

我正在开展一个大型的angular.js项目。

现在,我要介绍一些有关性能的网页。

使用项目的console.log我正在寻找性能问题。

我想念如果console.log可以输出当前时间(是的,我知道你可以在Chrome中设置)。

有没有办法(比如在log4java中)格式化输出?

提前致谢,

2 个答案:

答案 0 :(得分:1)

注意,console对象不应该在生产中激活,主要是因为它可能会破坏某些用户的代码(例如IE8或更少的用户)。

但是如果你想测试一个你知道的工具,你可以使用Web API接口,它为这个对象提供了一些有用的方法:

https://developer.mozilla.org/en-US/docs/Web/API/Console

(此文档来自Mozilla开发者网络(MDN),因此主要适用于Firefox,但在该页面的末尾,您可以找到IE,Chrome和Safari DevTools以及Firebug相应文档的链接)

例如,您可以对您的用例使用time()方法:

console.time("answer time");
// ... some other code
console.timeEnd("answer time");

输出如下内容:

Timing output in Firefox DevTools console

答案 1 :(得分:0)

您可以尝试这样的事情:

console = window.console ? console : {};
native_log = console.log;
window.console.log = function myConsole() {
    // Cannot log if console.log is not present natively,
    // so fail silently (in IE without debugger opened)
    if (!native_log)
        return;
    var args = Array.prototype.slice.call(arguments);
    args.unshift(new Date());
    native_log.apply(console, args);
}

console.log('hello'); // Date 2014-12-02T14:14:50.138Z "hello"

当然,你不会让新的Date()按原样,但它会给你一个想法。