Skip to content

Latest commit

 

History

History
executable file
·
186 lines (140 loc) · 2.86 KB

3. 运行.md

File metadata and controls

executable file
·
186 lines (140 loc) · 2.86 KB

Node.js基础 三、运行

⭐ by calidion


运行node环境

$> node
>_

打点内容执行下:

> console.log("Hello world!")
Hello world!
undefined
>_

这就是node的交互执行环境,也叫REPL(Read-Eval-Print-Loop)


REPL的一些命令

  1. .break命令(Ctrl-C) 有时候在REPL里输入的代码还没有结束,但是又不想输出时,可以使用.break退出当前的输入。比如:
> function() {
... console.log
... .break
> 

在输入function() {后,回车不会退出。如果这个时候你不想输入了,打一下.break即可退出。


  1. .exit命令(Ctrl-D)

从REPL里退出

$> node
> .exit
$ >_

当在REPL环境里打入.exit后,node就会退出执行


  1. .help命令 获得帮助的命令
> .help
.break    Sometimes you get stuck, this gets you out
.clear    Alias for .break
.editor   Enter editor mode
.exit     Exit the repl
.help     Print this help message
.load     Load JS from a file into the REPL session
.save     Save all evaluated commands in this REPL session to a file

  1. .save命令 将当前的REPL内容保存到文件中.
$> node
> var a = 100;
> console.log("a = " + a);
> .save a.js
> .exit
$> cat a.js
var a = 100;
console.log("a = " + a)

  1. .load命令 将文件的内容加载到当前的REPL环境中来.
$> node
> a   //加载前
ReferenceError: a is not defined
    at repl:1:1
    at ContextifyScript.Script.runInThisContext (vm.js:50:33)
    at REPLServer.defaultEval (repl.js:240:29)
    at bound (domain.js:301:14)
    at REPLServer.runBound [as eval] (domain.js:314:12)
    at REPLServer.onLine (repl.js:441:10)
    at emitOne (events.js:121:20)
    at REPLServer.emit (events.js:211:7)
    at REPLServer.Interface._onLine (readline.js:282:10)
    at REPLServer.Interface._line (readline.js:631:8)
> .load a.js  //加载
> a   //加载后
100

  1. .editor命令

进入一个相对自然的编辑环境,不会对每行输入进行解析

> .editor
// 进入编辑模式 (^D 结束退出, ^C取消)
function welcome(name) {
  return `Hello ${name}!`;
}

welcome('Node.js User');

// ^D
'Hello Node.js User!'
>

REPL里几个键盘控制

  1. <ctrl>-C: 退出当前行
  2. <ctrl>-D:退出REPL环境,与.exit的功能是一样的
  3. <tab>:补全/提示输入内容列表

通过node参数运行代码片段

a. 参数-e

$> node -e 'console.log("Hello world!")'
Hello world!

b. 参数-p

$> node -p 'console.log("Hello world!")'
Hello world!
undefined

运行nodejs脚本文件

  1. 创建一个xxx.js文件(这里是hello.js)
//hello.js
console.log("Hello world!");
  1. 执行
$> node hello.js
  1. 执行结果
Hello world!