it-swarm.dev

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

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

什么是首选方法,这些方法有什么区别?

54
never_had_a_name

sys.puts只是在日志中打印给定的字符串。

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

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

55
Elias

两者都只是写入stdout流。区别在于sys.puts只是toString是第一个参数,而console.log接受多个参数,如果不是字符串,它将sys.inspect第一个参数。

16
isaacs

从版本0.2.3开始,不推荐使用Puts

8
angry kiwi
console.dir(objectToInspect)

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

2
Rajkamal Subramanian

您也可以使用console.log而无需sys模块。

2
daralthus
sys.puts([...]);

是同步输出功能。它就像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'(由 link 支持)这是一个修复#3577

1
Amol M Kulkarni