开始日期:2022-08-27
什么是Nodejs
nodejs就是JavaScript的运行时环境(宿主环境)
Nodejs的运行环境和浏览器的运行环境不一样
- Nodejs不具备浏览器提供的DOM API
NodeJS 的基本架构
第一层
- OS:操作系统
第二层
- V8:JavaScript引擎,运行JS
- LibUv:处理事件循环
- c-ares:DNS解析
- IIhttp/http-parse: HTTP 协议
- open-ssl:HTTPS
- zlib:文件压缩
第三层
- Node.js Binding:将底层的C/C++写的库接口暴露给JS环境
- Nodejs Standard Library:Nodejs 本身的核心模块
- C/C++ AddOns:让用户自己的C/C++模块通过桥接的方式提供给Nodejs
第四层
- NodeJS的API层: 业务开发,主要是使用各种API完成功能
第五层
- NodeJS
NodeJS可以做什么
- File System模块:提供文件和目录的读、写、创建、删除、权限配置等
- Net模块:提供网络套接字,用来创建TCP链接
- HTTP模块: 提供创建HTTP链接的能力,用来创建web服务器
- URL模块:处理客户端请求的URL信息、解析URL字符串
- Path模块:处理文件路径,解析文件路径
- Process模块:用来获取进程信息
- Buffer模块: 处理二进制数据
- Console模块:控制台模块,输出信息
- Crypto:加密模块
- Events模块:用来监听和派发用户事件
Nodejs 模块化
// 在AMD规范下引用模块
require(['axios'],function(axios){})
// 在CMD规范下引用模块
define(function(require){
const axios = require('axios');
})
// 在CommonJS规范下引用模块
const axios = require('axios');
// 在ES Module规范下引用模块
import axios from faxios'x