178

谷歌对我没有帮助,因为搜索“console.debug”只会显示一堆带有“console”和“debug”字样的页面。

console.log()我想知道和之间有什么区别console.debug()。有什么方法可以使用一堆console.debug()语句,然后只需翻转一个开关即可轻松关闭所有调试语句发送到控制台(例如在启动站点之后)?

4

6 回答 6

127

从技术上讲console.log console.debugconsole.info它们是相同的,但是它们显示数据的方式几乎没有什么不同。console.debug默认情况下在浏览器的 JS 控制台中不可见。它可以通过使用控制台的过滤器选项来启用。

console.log没有图标的黑色文本

console.info带有图标的蓝色文本

console.debug纯黑色文字

console.warn带有图标的黄色文本

console.error带有图标的红色文本

var playerOne = 120;
var playerTwo = 130;
var playerThree = 140;
var playerFour = 150;
var playerFive = 160;

console.log("Console.log" + " " +  playerOne);
console.debug("Console.debug" + " " +playerTwo);
console.warn("Console.warn" + " " + playerThree);
console.info("Console.info" + " " + playerFour);
console.error("Console.error" + " " + playerFive);

在此处输入图像描述

于 2016-04-01T11:19:04.060 回答
82

至少对于 IE、Firefox 和 Chrome 控制台,.debug() 只是为提高兼容性而添加的 .log() 的别名

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

https://developers.google.com/chrome-developer-tools/docs/console-api#consoledebugobject_object

https://msdn.microsoft.com/en-us/library/ie/hh772183(v=vs.85).aspx

于 2014-02-19T09:45:39.227 回答
48

它们几乎相同——唯一的区别是在最新版本的 Chrome 中,调试消息默认是隐藏的(您必须Verbose在控制台中将日志级别设置为 Devtools 顶部栏中才能查看调试消息;日志消息默认可见)。

于 2017-05-03T17:37:38.027 回答
15

console.info,console.debug方法与 相同console.log

  • console.log 印刷声明
  • console.info带有蓝色“i”图标的黑色文本
  • console.debug蓝色文本

文档:

于 2015-12-31T05:36:49.260 回答
6

如果您希望能够在产品完成后禁用日志记录,您可以覆盖该console.debug()功能或制作另一个自定义功能。

console.debug = function() {
    if(!console.debugging) return;
    console.log.apply(this, arguments);
};

console.debugging = true;
console.debug('Foo', {age:41, name:'Jhon Doe'});

Foo▸ {年龄:41,姓名:“Jhon Doe”}

console.debugging = false;
console.debug('Foo', {age:26, name:'Jane Doe'});

无输出

但是我还没有想出一种方法来为输出着色。

于 2018-11-17T21:04:32.150 回答
2

从浏览器的文档中,log方法debuginfo方法在实现方面是相同的,但颜色和图标不同

https://jsfiddle.net/yp4z76gg/1/

于 2016-01-29T08:30:08.400 回答