在观看
node.js
中有关承诺的一些视频时,该人使用 console.error()
来打印他知道会出错的内容,并使用 console.log()
来打印其他所有内容。除了以不同的颜色打印东西之外,这两个功能之间还有主要区别吗?
console.error()
写入stderr
,而console.log()
写入stdout
,如文档中所述。
在nodejs的默认运行中,
stdout
和stderr
都会进入控制台,但显然,它们可以被定向到不同的地方并且可以以不同的方式使用。 例如,当使用诸如“forever”之类的工具时,两个流会被记录到单独的日志文件中,以便可以单独检查它们。
假设 console.error()
可能包含更重要的信息,可能需要单独查看,但这实际上取决于您在自己的程序中如何使用
console.log()
与 console.error()
。控制台.log()
添加于:v0.1.100。
打印到stdout
,并带有换行符。可以传递多个参数,第一个用作主要消息,所有附加参数用作类似于 printf(3) 的替换值(参数全部传递给
util.format()
)。 控制台.error()
添加于:v0.1.100 .
打印到stderr
,并带有换行符。可以传递多个参数,第一个用作主要消息,所有附加参数用作类似于 printf(3) 的替换值(参数全部传递给
util.format()
)。2。语法
控制台.log()
console.log(obj1 [, obj2, ..., objN]);
console.log(msg [, subst1, ..., substN]);
console.error(obj1 [, obj2, ..., objN]);
console.error(msg [, subst1, ..., substN]);
console.exception(obj1 [, obj2, ..., objN]);
console.exception(msg [, subst1, ..., substN]);
控制台.log()
(i) 要输出的 JavaScript 对象列表。每个对象的字符串表示形式都按列出的顺序附加在一起并输出。
obj1 ... objN
(ii) 包含零个或多个替换字符串的 JavaScript 字符串。
msg
(iii) 用于替换 msg 中的替换字符串的 JavaScript 对象。这使您可以额外控制输出的格式。
subst1 ... substN
。
注意:console.exception() 是 console.error() 的别名;它们在功能上是相同的。 (i) 要输出的 JavaScript 对象列表。每个对象的字符串表示形式都按列出的顺序附加在一起并输出。
obj1 ... objN
(ii) 包含零个或多个替换字符串的 JavaScript 字符串。
msg
(iii) 用于替换 msg 中的替换字符串的 JavaScript 对象。这使您可以额外控制输出的格式。
subst1 ... substN
Console.log()
和 Console.error() 两者与所有流行浏览器几乎具有相同的兼容性。
注:
(i) 对于版本 28 中的 google chrome
Substitution strings
,如果将负值传递给 %d,它将向下舍入到最接近的负整数,因此 -0.1 变为 -1。
(ii)
Substitution strings
两者均适用于 Internet Explorer(10) 不支持 %c,%d 非数字时将渲染为 0