day1-node.js
1.快速打开终端的方法
-
打开你要运行的js文件所在的文件夹–>shift+鼠标右键–>快捷键s
-
点击在此处打开powershell窗口
2.终端快捷键
-
↑ 快速回到上你一个打开的的文件目录
-
tab 快速补全js文件的名字
-
esc 快速删除当前写错的js文件名字
-
cls 清空终端
3.引入fs操作模块文件
-
const 声明一个常量 利用require() 引入fs操作模块文件
const = require('fs');
4.使用fs.readFile()读取文件
-
fs.readFile(‘url’[,‘编码类型’],backcall)
-
backcall回调函数有两个参数 err失败 dataStr成功
-
1.若文件读取成功
err 返回 null
dataStr 回复 文件对应的内容
2.若文件读取失败
err 返回一个错误对象
dataStr 返回undefined
3.我们可以判读err的返回值来确定文件是否读取成功 -
注:凡是参数被[]包裹即为可选参数 没有则为必填参数 其中编码类型我们一般写utf8
5.使用fs.writeFile()写入文件
-
fs.writeFile(‘url’,需要写入文件的内容,backcall)
-
backcall回调函数有一个参数 err失败
1.若文件读取成功 err 返回 null 2.若文件读取失败 err 返回一个错误对象 3.我们可以判读err的返回值来确定文件是否读取成功
-
注:fs.writeFile()方法只能用来创建文件,不能用来创建路径
-
重复调用fs.writeFile()写入同一个文件,新写入的内容会覆盖之前的旧内容
6.路径问题
-
问题:
提供了./或…/开头的相对路径代码运行的时候,会以执行node命令时所处的目录,动态拼接出被操作文件的完整路径 -
解决方案:
直接提供一个绝对路径即可
移植性非常差,不利于后期维护__dirname
表示当前文件所处的目录(恒定)
7.使用path.join()拼接路径
-
path.join(‘url1’,‘url2’)
-
会自动处理./中的"."字符
-
…/会抵消前面的路径
8.使用path.basename()获取文件名
-
path.basename(‘url’,文件扩展名)
path.basename('url')//index.html path.basename('url','.html')//index
9.使用path.extname()获取文件名
path.extname(fpath)//index