nodejs基础
1. 认识node.js
a. Node.js是一个JavaScript运行环境,使js可以开发后端程序
b. Node.js 是一个基于 V8 JavaScript 引擎构建的 JavaScript 运行器(Ryan Dahl)
2. node.js的特性
a. 完全是js语法
b. 超强的高并发,实现高性能服务器
c. 开发周期短、开发成本低、学习成本低
3. 浏览器环境与node环境
Node.js可以解析js代码,提供很多系统级别的API
a. 文件的读写file system
b. 程度的管理process
c. 网络通信HTTP、HTTPS
4. 开发和使用
a. 下载安装包后,注意在属性中接触锁定
b. 在编译软件的终端中直接运行node 文件名.js
模块、包、commonJS
1. 为什么要有模块化开发?
2. commonJS规范
3. modules模块化规范写法
a. 将公共的功能抽离为一个单独的js文件作为一个模块,默认情况下该模块内的方法或属性外界无法访问
b. 在模块内通过exports或module.exports暴露属性和方法
i. module.exports = { testA, testB}
ii. exports.testA = testA
c. 在外界使用的模块中,使用require(“./文件名”)引入
npm与yarn
1. 创建pack.json:npm init
2. 安装包
npm i(install)/update/uninstall md5&版本号 (–save) --dev
a. 全局安装:-g
b. 锁定版本:–save/-S
c. 开发模式:–dev/-D
d. 展示安装包:list (-g)
e. 查看包信息:info md5 (version)
f. 查看包是否过时:outdated
3. 全局安装nrm
a. nrm(npm registry manager)是npm的镜像资源管理工具
b. npm手动切换:npm config set registry https://registry.npm.taobao.org
c. 安装nrm:npm install -g nrm
d. 使用nrm:nrm ls;nrm use taobao
4. yarn使用
a. 安装:npm install -g yarn
b. 优势:
i. 缓存每个下载过的包,无需重复下载
ii. 利用并行下载,最大化资源利用率,安装速度更快
iii. 超级安全:通过算法校验每个安装包的完整性
c. 使用:
i. 开始新项目:yarn init
ii. 添加依赖包:yarn add 2
ES模块化写法
1. 在package.json中声明类型:“type”:“module”
a. type:定义package.json文件和该文件所在目录根目录中.js文件和无拓展名文件的处理方式
b. “moduel”:ES模块;“commonjs”:;commonJs模块(默认)
c. 无论package.json中的type字段为何值:.mjs的文件都按照es模块来处理,.cjs的文件都按照commonJs模块来处理
2. 模块封装:
// 导出写法1
const moduleA = {
getName = (){ return "A"}
}
export default moduleA
// 导出写法2
const moduleB = {
getName = (){ return "B"}
}
export{
moduleB
}
3. js使用:
import moduleA from "./module/modeleA.js"
import {moduleB} from "./module/modeleB"
moduleB.getName()