node 路径
cd 切换命令
pwd 当前目录
cd ../ 返回上一级
写入数据到文件
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26//引入内置模块
const fs = require('fs');
const path = require('path');
//fs.writeFile(file,data[,options],callback) //4个参数
// 1 把数据写入到哪里
// 2 要写入什么数据
// 3 编码:以什么编码写入 可选 "默认UTF-8"
// 4 回调
fs.writeFile(path.join(__dirname,"./data/data.json"),"str","编码",function(err){
if(err){
throw err ;//有错误 抛出错误
}
console.log("写入成功");
});
//读取数据
//fs.readFile(path[,options],callback) 3个参数
// 1 从哪里读取数据
// 2 以什么解码格式解析数据 可选 默认“null”
// 3 回调 err data
fs.readFile(path.join(__dirname,"./data/data.json"),"utf-8",function(err,data){
if(err){
throw err;
}
console.log(data);
});
buffer
buffer 是一个缓冲,是一种二进制流的数据格式
类似一个数组,元素 2位16进制的字节
负责文件或数据的传输
utf-8 中1个汉字= 3个字节
GBK 中 1个汉字 = 2个字节
同步 :不常用
try…. catch()
1 | // sync 同步 |
路径 :引入文件路径用 path.join(__dirname,”./data.js”);
如何快速创建一个简单服务器
1 | //1 引入 http |
加载静态资源(css/img)
解决方案
先把静态资源文件放到公共文件夹下
1 | // 处理样式 |
npm 是什么?
官方解释:npm 为你和你的团队打开了连接整个 JavaScript 天才世界的一扇大门。它是世界上最大的软件注册表,每星期大约有 30 亿次的下载量,包含超过 600000 个 包(package) (即,代码模块)。来自各大洲的开源软件开发者使用 npm 互相分享和借鉴。包的结构使您能够轻松跟踪依赖项和版本。
个人理解 :
npm : 是一个 node 包管理器
作用:管理包 减少我们的负担,让我们专注于功能的开发。
安装与更新
升级:
- npm i npm -g ——> 全局安装 默认安装最新
- npm i npm@latest -g 安装最新版本
- npm i npm@6.9.0 -g 安装指定版本
降级;npm i npm@5.4.5 -g
常见命令
- npm init(自定义) ——- npm init -y(自动生成) —— 生成npm的配置文件
- package.json ——- 记录安装的包
- 安装 npm i 包名 / npm install 包名
- 卸载 npm un 包名 / npm uninstall 包名
- _ / -s / -D / -SD
- _ / -S —–> dependencies 发布阶段所依赖的包
- -D / -SD ——>devDependencies :开发阶段所依赖的包
安装模式
- 本地安装: npm i 包名 / -S / -D /-SD 安装到当前目录的node_modules
- 全局安装: npm i 包名 -g 安装在C盘下的node_modules
- 官方概念: npm 全局安装把一个”包”安装成一个命令行工具
- 效果概念: 全局都可以使用
cnpm和yarn
安装 npm i cnpm -g
查看版本 cnpm -v
cnpm i 包名 -S/-D/-SD
yarn
安装 npm i yarn -g
查看版本 yarn -v
yarn add 包名 -S/-D/-SD
模块化
commonJS
加载:require()
导出:module.exports
exports
exports 和module.exports指向同一片空间
exports 就是module.exports的一个别名
最终导出的还是以module.exports 的为主
创建模块
导出模块
内容
参数—>函数
模块和函数
加载模块require()
使用模块