This is a series of posts that will illustrate the what, why and how of Node. I'll be sharing my learnings from a course on Advanced NodeJS by Samer Buna offered on PluralSight. Any code samples tagged or attached will be available at the following repo.
      
      
        jscomplete
       / 
        advanced-nodejs
      
    
    For help, ask in #questions at slack.jscomplete.com
Node CLI and REPL
Node CLI comes with a variety of options to expose built-in debugging, multiple ways to execute scripts and other helpful runtime options.
Running a node command without any arguments starts a REPL.
R - Read
E - Eval
P - Print
L = Loop
When in REPL, you hit enter, it reads the command, executes it, prints the result and waits for the next command.
Helpful CLI Tips and Tricks
- 
-c- Syntax check - 
-p- Print Command. e.gnode -p "process.argv.slice(1) test 42"will print ['test', '42'] 
Helpful Repl Tricks and Tips
Autocomplete by
Tabrlwraputility to track reverse search.
NODE_NOREADLINE=1 rlwrap node
_is used to capture the last evaluated value.- 
Special commands that begin with a
dot.- 
.helpto print all such commands. - 
.breakto break out of a multiline session. - 
.loadto load external script file - 
.saveto save current session 
 - 
 You can create your own repl with custom options by requiring a
replmodule and starting it with custom options. You can also control repl's global context in case of preloading a library of data.
Example below will start the repl in strict mode and doesn't print anything when result is undefined. Also, it will have lodash available globally.
  const repl = require("repl");
  const lodash = require("lodash");
  let r = repl.start({
    ignoreUndefined: true,
    replMode: repl.REPL_STRICT_MODE
  });
  r.context.lodash = lodash;
    
Top comments (0)