Difference between console.log and sys.puts in node.js?
In node.js you can use console.log
or sys.puts
to print out to the screen.
What is the pre开发者_如何学Pythonferred method and what is the difference between these?
sys.puts
simply prints the given string in the logs.
But if you want to print a more complex object (Array, JSON, JSObject) you have to use console.log
because you want to "look inside" of the object.
sys.puts
would give you only "[object object]" for example.
Both just write to the stdout stream. The difference is that sys.puts
just toString
's the first argument, and console.log
takes multiple arguments, and will sys.inspect
the first arg if it's not a string.
Puts is deprecated in since version 0.2.3
Also you can use console.log without requiring the sys module.
console.dir(objectToInspect)
This might be another way to inspect objects.
sys.puts([...]);
Is a synchronous output function. Simply it is a blocking function as in Node.js language.
console.log([data], [...]);
Prints to stdout with newline.
For more Info:
http://nodejs.org/api/stdio.html#stdio_console_log_data
http://nodejs.org/api/util.html#util_util_puts
Note: 'sys' module was renamed to be 'util' (Supported by link) It was a Fix #3577
The preferred method is console.log()
. sys.puts()
has been removed.
The sys
module was renamed util
with this commit dated Oct 12, 2010. So sys.puts()
became util.puts()
. util.puts()
was added in v0.3.0, deprecation since v0.11.3, and removed in v12.0.0. The documentation advises to use console.log()
instead.
精彩评论