盘点Node.js的常用点

70 阅读3分钟

前言:Node.js 是基于 Chrome 的 V8 引擎封装,独立执行 JavaScript 代码的环境,Node.js 与浏览器环境的 JS 最大区别是Node.js 环境中没有 BOMDOM。主要用来编写后端程序(提供数据和网页资源等)和前端工程化(集成各种开发中使用的工具和技术)。

fs 模块 - 读写文件

fs封装了与本机文件系统进行交互的,方法/属性

// 1. 加载 fs 模块对象const fs = require('fs') // fs是模块标识符:模块的名字// 2. 写入文件内容fs.writeFile('文件路径', '文本内容', (err) => {// 写入后的回调函数})// 3. 读取文件内容fs.readFile('文件路径', (err, data) => {  // 读取后的回调函数  // data 是 文件内容的 Bufffer 16进制 数据流 .toString 转换成字符串})

path 模块 - 路径处理

建议在 Node.js 代码中,使用绝对路径,因为代码的相对路径是以终端所在文件夹为起点,而不是 Vscode 资源管理器,容易造成目标文件找不到的错误

const fs = require('fs')// 1. 引入 path 模块对象const path = require('path')// 2. 调用 path.join() 配合 __dirname 组成目标文件的绝对路径fs.readFile(path.join(__dirname, '../test.txt'), (err, data) => {  if (err) console.log(err)  else console.log(data.toString())})

URL 中的端口号

URL:统一资源定位符,简称网址,用于访问服务器里的资源

端口号:标记服务器里不同功能的服务程序

端口号范围:0-65535 之间的任意整数(http 协议,默认访问 80 端口)

http 模块-创建 Web 服务

// 1 加载 http 模块,创建 Web 服务对象const http = require('http')const server = http.createServer()// 2 监听 request 请求事件,设置响应头和响应体server.on('request', (req, res) => {  // 设置响应头-内容类型-普通文本以及中文编码格式  res.setHeader('Content-Type', 'text/plain;charset=utf-8')  // 设置响应体内容,结束本次请求与响应  res.end('欢迎使用 Node.js 和 http 模块创建的 Web 服务')})// 3 配置端口号并启动 Web 服务server.listen(3000, () => {  console.log('Web 服务启动成功了')})

Node.js 模块化

每个文件都是独立的模块,这些模块可以提高代码复用性,按需加载,是独立作用域,使用特定语法,导出和导入使用

CommonJS 标准

1.导出:module.exports= {}2.导入:require('模块名或路径')
  内置模块:直接写名字(例如:fs,path,http)  自定义模块:写模块文件路径(例如:./utils.js)

ECMAScript 标准

- 默认导出和导入

1.导出:export default {}2.导入:import
变量名 from '模块名或路径' // 路径文件名.js不可省

Node.js 默认支持 CommonJS 标准语法,如需使用 ECMAScript 标准语法,在运行模块所在文件夹新建 package.json 文件,并设置 { "type" : "module" }

- 命名导出和导入

1.导出:export 修饰定义语句2.导入:import { 同名变量 } from '模块名或路径'

tips:

按需加载,使用命名导出和导入;全部加载,使用默认导出和导入

CommonJS 标准:一般应用在 Node.js 项目环境中

ECMAScript 标准:一般应用在前端工程化项目中

谢谢您的阅读,希望对您有帮助,有问题欢迎随时指正交流!!!