diff --git a/readme.md b/readme.md deleted file mode 100644 index 4c7fce1a6d837b4222a7ace58bcfe14ff9050cf9..0000000000000000000000000000000000000000 --- a/readme.md +++ /dev/null @@ -1,3 +0,0 @@ -## net前端班笔记 - -上课录屏地址:https://www.alipan.com/s/R85ZxiyYWBg \ No newline at end of file diff --git "a/\351\231\210\351\270\277\345\246\202/20240229-\345\210\235\350\257\206nodejs\344\270\216npm.md" "b/\351\231\210\351\270\277\345\246\202/20240229-\345\210\235\350\257\206nodejs\344\270\216npm.md" new file mode 100644 index 0000000000000000000000000000000000000000..64de667588de2c9b8c2b93eb26825e463aafd632 --- /dev/null +++ "b/\351\231\210\351\270\277\345\246\202/20240229-\345\210\235\350\257\206nodejs\344\270\216npm.md" @@ -0,0 +1,61 @@ +# 初识nodejs与npm + +## Node.js + +### 1. 初识 Node.js + +#### 1.1 nodejs 简介 + +Node.js 作为一个JavaScript 运行环境,仅仅提供了基础功能和API ,然而, 基于node。js提供的这些内容,很多强大的工具层出不穷,因此我们学会了nodejs还需要学会一些框架 +1. 基于express 框架,可以快速构建出Web应用 +2. 基于Electron框架,可以构建跨平台的桌面运用 +3. 基于restify框架,可以快速构建api接口项目 +## 包管理工具 + +### 一概念介绍 + +#### 1.1包是什么 +【包】英文单词是package,代表一组特定功能的源码集合 + +#### 1.2包管理工具 +管理【包】的应用软件,可以对【包】进行 下载安装,更新,删除,上传。。等操作 + +#### 1.3常用的包管理工具有 +1. npm +2. yarn (速度很快) +3. cnpm + +### 二 npm +npm 全称 Node Package Manager , 翻译成中文【Node包管理工具】 +npm 是 node.js 官方内置的包管理工具,是必须要掌握的工具。 + +#### 2.1 初始化 +执行npm init 可以将文件夹初始化为一个【包】,交互式创建package.json 文件 + +package.json 文件是包的配置文件,每个包都必须要有package.json + +package.json 内容实例: +{ +"name": "01_npm", +"version": "1.0.0", +"description": "", +"main": "index.js", +"scripts": { +"test": "echo \"Error: no test specified\" && exit 1" +}, +"author": "", +"license": "ISC" +} +{ +"name": "1-npm", #包的名字 +"version": "1.0.0", #包的版本 +"description": "", #包的描述 +"main": "index.js", #包的入口文件 +"scripts": { #脚本配置 +"test": "echo \"Error: no test specified\" && exit 1" +}, +"author": "", #作者 +"license": "ISC" #开源证书 +} + + diff --git "a/\351\231\210\351\270\277\345\246\202/20240301-\346\250\241\345\235\227\345\214\226.md" "b/\351\231\210\351\270\277\345\246\202/20240301-\346\250\241\345\235\227\345\214\226.md" new file mode 100644 index 0000000000000000000000000000000000000000..08d0d73dfeb6bb70e8caf7dc2034581162569d89 --- /dev/null +++ "b/\351\231\210\351\270\277\345\246\202/20240301-\346\250\241\345\235\227\345\214\226.md" @@ -0,0 +1,26 @@ +## 模块化 + +### 一、模块化的好处 +1. 防止命名冲突 +2. 高复用性 +3. 高维护性 + +### 二、暴露数据 +1. module.exports = value +2. exports.name = value + + 使用时有几个注意的点: + - module.exports 可以暴露任意数据 +### 三、导入引入模块 + const test = reuqire('test') + **require 使用一些注意事项** + 1.对于自己创建的模块,我们建议你写相对路径,且不能省略./ 和 ../ + 2.js 和 json 文件导入时可以不用写后缀, c/c++编写的node扩展文件也可以不用写后缀,但是一般用不到 + 3.如果导入其他文件类型,会以js文件类型进行处理 + 4.导入node.js内置模块时,直接require('模块名字即可'),无需加./ 和 ../ +### 四、CommonJs规范 + module.exports、exports 以及 require 这些都是CommonJs 模块化规范中的内容,而Node.js 是实现了 CommonJs 模块化规范,二者关系有点像JavaScrip + t 与 ECMAScript + + + diff --git "a/\351\231\210\351\270\277\345\246\202/20240302-\346\250\241\345\235\227fs\345\222\214module.md" "b/\351\231\210\351\270\277\345\246\202/20240302-\346\250\241\345\235\227fs\345\222\214module.md" new file mode 100644 index 0000000000000000000000000000000000000000..f147ff52542381c01987d09c8a3b397ee7cd4355 --- /dev/null +++ "b/\351\231\210\351\270\277\345\246\202/20240302-\346\250\241\345\235\227fs\345\222\214module.md" @@ -0,0 +1,25 @@ +# 模块fs 和module + +## 模块fs + +导入模块 resquire('fs') +1. 写入,fs.writeFile 同步 (同步有回调函数) + fs.writeFileSync 异步 (可以直接写入) + +## module +`````` +导入 +// const kun = require('./kun'); +import { ooo } from "./ji.js" + +// kun.name() +console.log(ooo); + +暴露 +function ooo(){ + console.log("傻逼oooo"); +} + +export{ooo} +`````` + diff --git "a/\351\231\210\351\270\277\345\246\202/20240303-fs\346\250\241\345\235\227.md" "b/\351\231\210\351\270\277\345\246\202/20240303-fs\346\250\241\345\235\227.md" new file mode 100644 index 0000000000000000000000000000000000000000..a5280b89cc3df83c97b7fc001bd44cb73b27a5e2 --- /dev/null +++ "b/\351\231\210\351\270\277\345\246\202/20240303-fs\346\250\241\345\235\227.md" @@ -0,0 +1,78 @@ +## fs 模块 +fs 全称为 file system ,称之为 文件系统 ,是 Node.js 中的 内置模块 ,可以对计算机中的磁盘进行操作。 + +### 文件写入 +文件写入就是将 数据 保存到 文件 中,我们可以使用如下几个方法来实现该效果 +writeFile 异步写入 +writeFileSync 同步写入 +appendFile / appendFileSync 追加写入 +createWriteStream 流式写入 + +#### writeFile 异步写入 +- 语法: fs.writeFile(file, data[, options], callback) +参数说明: +file 文件名 +data 待写入的数据 +options 选项设置 (可选) +callback 写入回调 +返回值: undefined + +#### writeFileSync 同步写入 +- 语法: fs.writeFileSync(file, data[, options]) +参数与 fs.writeFile 大体一致,只是没有 callback 参数 +返回值: undefined + +#### appendFile / appendFileSync 追加写入 +- appendFile 作用是在文件尾部追加内容,appendFile 语法与 writeFile 语法完全相同 +语法: + - fs.appendFile(file, data[, options], callback) + - fs.appendFileSync(file, data[, options]) + - 返回值: 二者都为 undefined + +#### createWriteStream 流式写入 +- 语法: fs.createWriteStream(path[, options]) +参数说明: +path 文件路径 +options 选项配置( 可选 ) +返回值: Object + +### 文件读取 +- ``readFile`` 异步读取 +- ``readFileSync`` 同步读取 +- ``createReadStream`` 流式读取 + +#### readFile 异步读取 +语法: fs.readFile(path[, options], callback) +参数说明: +path 文件路径 +options 选项配置 +callback 回调函数 +返回值: undefined + +#### readFileSync 同步读取 +语法: fs.readFileSync(path[, options]) +参数说明: +path 文件路径 +options 选项配置 +返回值: string | Buffer + +#### 文件夹操作 +readdir / readdirSync 读取文件夹 +在 Node.js 中,我们可以使用 readdir 或 readdirSync 来读取文件夹 +语法: +fs.readdir(path[, options], callback) +fs.readdirSync(path[, options]) +参数说明: +path 文件夹路径 +options 选项配置( 可选 ) +callback 操作后的回调 + +#### 查看资源状态 +在 Node.js 中,我们可以使用 stat 或 statSync 来查看资源的详细信息 +语法: +fs.stat(path[, options], callback) +fs.statSync(path[, options]) +参数说明: +path 文件夹路径 +options 选项配置( 可选 ) +callback 操作后的回调 \ No newline at end of file