node.js学习

什么使node.js

node.js是一个开源的,跨平台的javascript运行环境

作用

1.开发服务器应用
2.开发工具类应用
3.开发桌面端应用

进程 和 线程

进程是程序的一次执行过程
线程是一个进程中执行的一个执行流 ,一个线程是属于某个进程的

Buffer

//BUffer 【缓冲区】,是一个类似与Array的对象,用于表示固定长度的字节序列
//三种创建方式

//1.alloc    会对旧二进制 每段都清零
let buf = Buffer.alloc(10)
console.log(buf)
//2.allocUnsafe   会有旧数据  (不安全)   优点:运行快
let buf_2 = Buffer.allocUnsafe(10)
//3.from  可以将字母数字转换成二进制  ASCII 字符码表
let buf_3 = Buffer.from()

在这里插入图片描述

fs 模块

可以实现与硬盘的交互

一、文件写入

//导入fs 模块
const fs = require('fs');
fs.writeFile('./afafa.txt', '你爱我啊我爱i你', err => {
  if (err) {
    console.log('写入失败')
    return
  }
  console.log('写入成功')
})
//fs.writeFilesync 同步写入
//fs.appendFile 追加写入
//fs.writeFile('','','{flag:'a'}') 追加写入

二、文件读取

//引入fs模块
const fs = require('fs')
//异步读取
fs.readFile('./afafa.txt', (err, data) => {
  if (err) {
    console.log('读取失败')
    return
  }
  console.log(data.toString())
})
//同步读取 let data= fs.readFileSync('./afafa.txt')

在这里插入图片描述
流式读取
在这里插入图片描述

文件复制
在这里插入图片描述
文件重命名和移动 rename
在这里插入图片描述
文件删除 unlink 、rm
在这里插入图片描述

二、文件夹操作

//1.导入模块
const fs = require('fs')
//2.创建文件夹 mk make 制作 dir directory 文件夹

fs.mkdir('./html', err => {
  if (err) {
    console.log('创建失败')
    return
  }
  console.log('创建成功')
})
//2-2 递归创建
fs.mkdir('./a/b/c/d', { recursive: true }, err => {
  if (err) {
    console.log('创建失败')
    return
  }
  console.log('创建成功')
})
//2-3 读取文件夹
fs.readdir('../node', (err, data) => {
  if (err) {
    console.log('读取失败')
    return
  }
  console.log(data)
})
//2-4 删除文件夹
fs.rmdir('./html', (err) => {
  if (err) {
    console.log('删除失败')
    return
  }
  console.log('删除成功')
})
//递归删除
fs.rm('./a', { recursive: true }, (err) => {
  if (err) {
    console.log('删除失败')
    return
  }
  console.log('删除成功')
})

查看资源
在这里插入图片描述

路径bug
在这里插入图片描述

path模块

在这里插入图片描述
在这里插入图片描述

https

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

在这里插入图片描述

http模块创建Web服务

在这里插入图片描述

node.js模块化

每个文件都是独立的模块
使用特定的语法,导出和导入使用

CommonJS规定

导出:module.exports=() , 导入:require(’模块名或路径‘) nods.js默认支持

ECMAScript规定

导出:export default() , 导入:import 变量名 from ’路径或模块名‘
要使用ECMAScript标准语法,在运行模块所在文件夹新建 package.json文件,并设置{’type‘:‘module’}
在这里插入图片描述

在这里插入图片描述

npm -软件包管理工具

  1. 初始化清单文件:npm i init -y (得到package.json文件,有则略过此命令)
  2. 下载软件包: npm i 软件包名称
  3. 使用软件包

在这里插入图片描述

npm 安装所有依赖

npm i
在这里插入图片描述

npm 全局软件包 nodemon

软件包区别:
本地软件包:当前项目内使用,封装属性和方法,存在于node_nodules
全局软件包:本机所有项目使用,封装命令和工具,存在于系统设置的位置
nodemon作用:替代node命令,检测代码更改,自动重启程序
使用:

  1. 安装 npm i nodemon -g (-g 代表安装到全局环境中)
  2. 运行:nodemon待执行的目标js文件

在这里插入图片描述

评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值