REPL stands for Read-Eval-Print-Loop, and is a utility included with
Node that can be very handy when you’re getting started. It works like the
debug console in your browser and you can execute whatever commands you
want. You don’t need to do anything to install it—you’ll have it available
from the command line wherever Node is available. Before even creating an
application you can start poking around and see what Node can do by typing
node on the command line. If you don’t specify an application
to run, you get the REPL instead.
> ["Hello","World"].join(" ") 'Hello World' > 2 + 3 5
You can exit the REPL by pressing Ctrl+C.
Let’s say you’re researching modules to manage asynchronous code
paths in your project. There are numerous modules to handle asynchronous
code and flow control—let’s assume you’ve found a couple you’d like to
compare, but neither has a documented API (in reality, the one we’re using
below has very nice documentation). To get a better picture of what’s
included, you can install them with npm and then use the REPL to
investigate them. If you installed the
async module, for
instance, you could do this:
$ node > var async = require("async"); undefined > console.dir(async);
That will cause the module to spit out a list of its properties, which you can investigate further from that point, should you so desire. Of course you could just read the source, but it’s useful to know you can open the REPL and see exactly what Node sees. You can also use Tab to auto-complete function and variable names within your code, which may be a faster reference than searching online if you’re in the midst of testing something.