目录
ES6
块级作用域
NODEJS
全局对象
global对象
process 对象
Buffer 对象
分配内存空间
模块
NODEJS
timer——定时器
开启定时器
清楚定时器
周期性定时器
开启
清除
立即执行定时器
文件系统
同步 API和异步 API
写入文件
追加写入
读取文件
删除文件
检测文件(目录)
文件流
HTTP 模块
createServer()创建web服务器
设置服务器跳转
process 对象用来查看当前运行的Node.js进程
process.arch 查看当前CPU架构
process.platform 查看当前操作系统
process.pid 查看当前进程编号
process.kill()结束指定编号的进程
Buffer,缓冲存储区,内存中一块区域,用于临时存储数据
// 单位字节,每个汉字占3个字节
var buf = Buffer.alloc(9,'abc小莉莉');
console.log(buf.toString());
一个文件就是一个模块,每个文件就是一个独立的功能
// 开启
// 一次性定时器
var timer = setTimeout(() => {
console.log("点击发送快递");
}, 3000);
// 清楚定时器
clearTimeout(timer)
var timer = setInterval(() => {
console.log("fdsfnfdks");
}, 3000);
clearInterval(timer)
// 立即执行定时器
console.log(2);
setImmediate(()=>{
console.log(1);
})
console.log(3);
// 立即执行定时器(优先级高)
process.nextTick(()=>{
console.log(4);
})
所有的定时器执行过程,都是将回调函数放入到主程序后的事件队列执行
Node.js下,提供的API带有回调函数的都是异步API
writeFileSync(path,data)/ writeFile(path,data,callback)
appendFileSync(path,data)/ appendFile(path,data,callback)
readFileSync(path)/readFile(path,callback)
// 引入文件系统模块
// 同步API,会阻止后续代码的执行
const fs = require("fs");
// 读取文件 同步
var data = fs.readFileSync("1.txt");
fs.readFile("2.txt", (err,data) => {
if (err) return console.error(err);
console.log(data.toString());
});
unlinkSync(path)/unlink(path,callback)
existsSync(path)
createReadStream(path)创建读取的流,以流的方式读取文件
createReadStream(path)创建写入的流,创建一个新的文件
pipe()管道,将读取的流添加到写入的流
on(‘事件名称’,callback)添加事件,监听事件,
HTTP 协议
超文本传输协议, 是客户端和web服务器之间的通信协议
web服务器:提供资源的服务器
listen(number,callback)设置端口
on(‘request’,(req,res)=>{
res 响应对象
res.statusCode=状态码 设置响应的状态码
res.setHeader()设置响应的头信息
res.write()设置响应到浏览器内容
res.end()结束并发送
})
// 引入http模块
const fs = require("fs");
const http = require("http");
// 创建web服务器
const app = http.createServer();
// 设置端口,用于访问web服务器
app.listen(3000, () => {
console.log("服务器启动成功");
});
// 域名
// http:localhost:3000
// IP地址
// http:127.0.0.1:3000
// 添加事件,监听客户端请求,做出响应
app.on("request", (req, res) => {
// console.log("视频请求");
// req 请求对象
// res 响应对象
// 设置响应头信息内容类型
// res.setHeader("Content-Type", "text/html;charset=utf-8");
// //设置响应到浏览器的内容
// res.write("web前端");
// // 结束
// res.end();
// 设置响应状态码
res.statusCode = 302;
// 设置响应的头信息,跳转网址
res.setHeader("Location", "https://www.tmooc.cn/");
// 结束并发送
res.end();
});