17

在 javascript 中,我有一个变量,我推送console.log它然后将其递增并再次将其推送到日志中,这在 Chrome 开发工具中显示如下。

这个变量做了一些奇怪的事情,比如如果我尝试使用+=运算符来添加它,它实际上会将添加的值放在数字之后(例如 ifx=5和 I did x+=3, xwould equal 53)。真正令人难以置信的部分是使用 ++ 递增它按预期工作,但我的问题不是为什么会发生这种情况,而是为什么递增的数字在控制台中是蓝色的?如果有人能告诉我可能发生上述情况的情况,那就太好了,但我感觉控制台中的蓝色条目与它有关。

那么基本上为什么在 Chrome 开发控制台中,一个数字会以蓝色显示?

4

2 回答 2

24

当您使用打印字符串时,console.log您会得到黑色输出。但是,如果您打印一个数字,则输出为蓝色。请参阅下面的屏幕截图(不要介意带有“未定义”值的行,因为这是console.log()默认返回的内容)。

console.log() 输出

你是对的,你的问题与+=这些颜色有关。您正在将数字添加到导致连接 ( 53) 的字符串中。

于 2013-08-09T10:32:42.160 回答
0

注意使用逗号和加号的区别console.log()

console.log( 'console.log("(" + 1 + ")"); // string concat' );
console.log("( " + 999 + " )"); 

console.log( 'console.log("(", 1, ")"); // string, number (blue), string' );
console.log("(", 999, ")");

在此处输入图像描述

于 2020-06-12T17:41:19.853 回答