console.log和node.js中的sys.puts之间的区别?

在node.js中,您可以使用console.logsys.puts打印到屏幕上。

什么是首选的方法和这些之间的区别是什么?

sys.puts只是在日志中打印给定的string。

但是,如果你想打印一个更复杂的对象(数组,JSON,JSObject),你必须使用console.log因为你想“看看”的对象。

sys.puts只会给你例如“[object object]”。

都只是写入标准输出stream。 不同之处在于, sys.puts只是toString的第一个参数,而console.log接受多个参数,如果它不是一个string,将sys.inspect第一个arg。

自0.2.3版本起,弃用

你也可以使用console.log而不需要sys模块。

 console.dir(objectToInspect) 

这可能是检查对象的另一种方式。

 sys.puts([...]); 

是同步输出function。 简单来说,它就像在Node.js语言中一样是一个阻塞函数。

 console.log([data], [...]); 

用换行符打印到stdout。

欲了解更多信息:

http://nodejs.org/api/stdio.html#stdio_console_log_data

http://nodejs.org/api/util.html#util_util_puts

注意:'sys'模块被重命名为'util'(由链接支持)这是修复#3577