第3章 起步

安装 Node 环境

版本说明

  • LTS 长期支持版,适用于开发和生产环境
  • Current 最新版,适用于体验测试

下载

安装(Windows)

image-20181120125258392

点击下一步

image-20181120125456932

同意协议,点击下一步

image-20181120125522493

点击下一步

image-20181120125605674

点击下一步

image-20181120125801058

点击下一步

image-20181120125831374

点击 Install 开始安装

image-20181120125856275

正在安装中…

image-20181120125920281

安装完成,点击 Finish 结束。

确认是否安装成功

打开命令行,输入 node --version 或者 node -v。如果能看到类似于下面输出 v10.13.0 的版本号,则表示安装成功。

image-20181120130926564

注意:如果是安装之前打开的命令行请在安装结束之后关闭重新打开再执行上述命令

REPL

类似于浏览器中的 Console ,可以做一些基本的代码测试。

  • R:Read 读取
  • E:Eval 执行
  • P:Print 输出
  • L:Loop 循环
  • 进入
    • 输入 node 回车即可
  • 使用
  • 离开
    • 按住 Ctrl 不要丢,c 两次即可退出

image-20181107154211879


执行一个JS文件

1. 新建一个 hello.js 并写入以下示例代码

  1. const message = 'Hello Node.js!'
  2. console.log(message)

2. 打开命令行并定位到 hello.js 文件所属目录

3. 在命令行中输入 node hello.js 回车执行

注意:

  • 文件名不要起名为 node.js
  • 文件名或者文件路径最好不要有中文
  • 文件路径或者文件名不要出现空格

文件读写

文件读取:

  1. const fs = require('fs')
  2. fs.readFile('/etc/passwd', (err, data) => {
  3. if (err) throw err
  4. console.log(data)
  5. })

文件写入:

  1. const fs = require('fs')
  2. fs.writeFile('message.txt', 'Hello Node.js', (err) => {
  3. if (err) throw err
  4. console.log('The file has been saved!')
  5. })

HTTP 服务

  1. // 接下来,我们要干一件使用 Node 很有成就感的一件事儿
  2. // 你可以使用 Node 非常轻松的构建一个 Web 服务器
  3. // 在 Node 中专门提供了一个核心模块:http
  4. // http 这个模块的职责就是帮你创建编写服务器的
  5. // 1. 加载 http 核心模块
  6. var http = require('http')
  7. // 2. 使用 http.createServer() 方法创建一个 Web 服务器
  8. // 返回一个 Server 实例
  9. var server = http.createServer()
  10. // 3. 服务器要干嘛?
  11. // 提供服务:对 数据的服务
  12. // 发请求
  13. // 接收请求
  14. // 处理请求
  15. // 给个反馈(发送响应)
  16. // 注册 request 请求事件
  17. // 当客户端请求过来,就会自动触发服务器的 request 请求事件,然后执行第二个参数:回调处理函数
  18. server.on('request', function () {
  19. res.end('Hello Node.js!')
  20. })
  21. // 4. 绑定端口号,启动服务器
  22. server.listen(3000, function () {
  23. console.log('服务器启动成功,请求访问 http://127.0.0.1:3000/')
  24. })

Node.js 中的 JavaScript

ECMAScript

全局成员

Global Objects

模块化

小结