他们看了一些关于node.js中的Promise的视频,他们使用error()打印他现在会出错的内容,并使用log()处理其他所有内容。除了以不同的颜色打印东西以外,这两个功能之间是否还有主要区别?
console.error()按doc中所述写入stderr,而console.log()写入。 stdout
在默认的的NodeJS运行,都stdout和stderr到控制台,但很明显,他们可以针对不同的地方,可以不同方式使用。例如,在使用诸如forever之类的工具时,这两个流将记录到单独的日志文件中,以便可以分别进行检查。
该假设是,console.error()可能包含可能希望在单独将显得更严重的信息,但是这是真的取决于你如何使用console.log()与console.error()在自己的程序。
下面从不同方面对console.log()和console.error()的区别做一些详细的说明。
1.定义
控制台日志()
添加于:v0.1.100。用换行符
打印到stdout。可以传递多个参数,第一个用作主要消息,所有其他参数用作类似于 printf(3) 的替换值(所有参数都传递给util.format())。
控制台错误()
加入: v0.1.100 。用换行符
打印到stderr。可以传递多个参数,第一个用作主要消息,所有其他参数用作类似于 printf(3) 的替换值(所有参数都传递给util.format())。
2. 语法
控制台日志()
console.log(obj1 [, obj2, ..., objN]);
console.log(msg [, subst1, ..., substN]);
Run Code Online (Sandbox Code Playgroud)
控制台错误()
console.error(obj1 [, obj2, ..., objN]);
console.error(msg [, subst1, ..., substN]);
console.exception(obj1 [, obj2, ..., objN]);
console.exception(msg [, subst1, ..., substN]);
Run Code Online (Sandbox Code Playgroud)
3. 参数
控制台日志()
(i) 要输出的 JavaScript 对象列表。这些对象中的每一个的字符串表示都按照列出和输出的顺序附加在一起。
obj1 ... objN
Run Code Online (Sandbox Code Playgroud)
(ii) 包含零个或多个替换字符串的 JavaScript 字符串。
msg
Run Code Online (Sandbox Code Playgroud)
(iii) 用于替换 msg 中的替换字符串的 JavaScript 对象。这使您可以额外控制输出的格式。
subst1 ... substN
Run Code Online (Sandbox Code Playgroud)
Console.error()。
注意: console.exception() 是 console.error() 的别名;它们在功能上是相同的。
(i) 要输出的 JavaScript 对象列表。这些对象中的每一个的字符串表示都按照列出和输出的顺序附加在一起。
obj1 ... objN
Run Code Online (Sandbox Code Playgroud)
(ii) 包含零个或多个替换字符串的 JavaScript 字符串。
msg
Run Code Online (Sandbox Code Playgroud)
(iii) 用于替换 msg 中的替换字符串的 JavaScript 对象。这使您可以额外控制输出的格式。
subst1 ... substN
Run Code Online (Sandbox Code Playgroud)
4. 浏览器兼容性
Console.log() 和Console.error()都与所有流行的浏览器具有几乎相同的兼容性。
笔记:
(i) 在 google chromeSubstitution strings版本 28 的情况下,如果将负值传递给 %d,它将向下舍入为最接近的负整数,因此 -0.1 变为 -1。
(ii)Substitution strings两者都 不支持 Internet Explorer(10) %c,%d 不是数字时将呈现为 0
| 归档时间: |
|
| 查看次数: |
4738 次 |
| 最近记录: |