了解 Node.js
Node.js 是一个基于 Chrome V8 引擎的 JavaScript 运行环境。
Node.js 的官网地址: nodejs.org/zh-cn/
注意:
① 浏览器是 JavaScript 的前端运行环境。
② Node.js 是 JavaScript 的后端运行环境。
③ Node.js 中无法调用 DOM 和 BOM 等浏览器内置 API。
Node .js 可以用来做些什么?
① 基于 Express 框架(www.expressjs.com.cn/),可以快速构建 Web 应用
② 基于 Electron 框架(electronjs.org/),可以构建跨平台的桌…
③ 基于 restify 框架(restify.com/),可以快速构建 API 接口项目
④ 读写和操作数据库、创建实用的命令行工具辅助前端开发、etc…
Node.js 环境的安装
安装包
可以从 Node.js 的官网首页直接下载,
点击绿色的按钮,下载所需的版本后,双击直接安装即可。
版本
LTS
为长期稳定版,适合追求稳定性的企业级项目
Current
为新特性尝鲜版,适合热衷于尝试新特性的用户,不过可能存在隐藏的 Bug 或安全性漏洞。
查看已安装的 Node.js 的版本号
打开终端
,在终端输入命令 node –v
后,按下回车键
如何打开终端
- Windows 系统:使用快捷键(
Windows徽标键 + R
)打开运行面板,输入 cmd
后直接回车
,即可打开终端。 - Mac 系统:… ???
终端中的快捷键
在 Windows 的 powershell 或 cmd 终端中,我们可以通过如下快捷键,来提高终端的操作效率:
① 使用 ↑ 键,可以快速定位到上一次执行的命令
② 使用 tab 键,能够快速补全路径
③ 使用 esc 键,能够快速清空当前已输入的命令
④ 输入 cls 命令,可以清空终端
Node.js 的基本使用
如何在 Node.js 环境中执行一个js文件中 JavaScript 代码
在终端输入命令: node filePath
filePath 要执行的js文件的路径
Node.js 的组成
Node.js 的学习路径:
-> JavaScript 基础语法
-> Node.js 内置 API 模块(fs、path、http等)
-> 第三方 API 模块(express、mysql 等)
Node.js 内置 API 模块
- fs 文件系统模块
- path 路径模块
- http
+…
Node.js 的 fs 文件系统模块
fs 模块是 Node.js 官方提供的、用来操作文件的模块。
使用前需先导入fs 模块
const fs = require('fs')
常用的方法:
fs.readFile()
方法,用来读取指定文件中的内容
fs.writeFile()
方法,用来向指定的文件中写入内容
fs.readFile() 的语法格式
fs.readFile(path [,option], callback(err, result))
参数:
path 必选参数,字符串,表示文件的路径。
option 可选参数,表示以什么编码格式来读取文件。比如:utf8
callback 必选参数,文件读取完成后,通过回调函数拿到读取的结果。
回调函数的参数:
err 读取文件成功时,值为 null
;读取文件失败时,值是一个对象。
result 读取文件失败时,值为 undefined
;读取文件成功时,值为 文件的内容
。
可通过判断
err 的值是否为 null
来判断文件是否读取成功。
路径动态拼接的问题
提供文件路径时,如使用以 ./
或 ../
开头的相对路径,很容易出现 路径动态拼接错误的问题 。
为什么呢?
因为代码在运行的时候,会以执行 node 命令时所处的目录,动态拼接出被操作文件的完整路径。
怎么解决呢?
在使用 fs 模块操作文件时,直接提供完整的路径,不要提供 ./ 或 ../ 开头的相对路径,从而防止路径动态拼接的问题。
__dirname
当前文件所处目录
__dirname + '/files/1.txt'
当前文件完整的路径
fs.writeFile() 的语法格式
fs.writeFile(path, data [,option], callback(err))
参数:
path 必选参数,字符串,表示文件的路径。
data :必选参数,表示要写入的内容。
option 可选参数,指定编码格式,默认值是 utf8
callback 必选参数,文件写入完成后的回调函数。
回调函数的参数:
err 写入文件成功时,值为 null
;写入文件失败时,值是一个对象。
可通过判断 err 的值是否为 null 来判断文件写入是否成功。
Node.js 的 path 路径模块
path 模块是 Node.js 官方提供的、用来处理路径的模块。
使用前需先导入path 模块
const path = require('path')
常用的方法:
path.join()
方法,用来将多个路径片段拼接成一个完整的路径字符串
path.basename()
方法,用来从路径字符串中,将文件名解析出来
path.extname()
方法,可以获取路径中的扩展名部分
path.join() 的语法格式
path.join([...paths])
参数
…paths 必选参数,字符串,可接收任意个路径片段的序列
返回值:
一个字符串 ,也就是拼接好的路径片段的序列
注意点:
① 凡是涉及到路径拼接的操作,都要使用 path.join()
方法进行处理。不要直接使用 +
进行字符串的拼接。 path.join(__dirname, '/files/1.txt')
优于 __dirname + '/files/1.txt'
② 路径拼接时如遇到字符串 ../
,一个../
会抵消一层路径。
path.basename() 的语法格式
path.basename(path [,ext])
参数
path 必选参数,字符串,表示文件路径
ext 可选参数,表示文件扩展名
返回值:
一个字符串 ,获取到的路径中的最后一部分
经常通过这个方法获取路径中的文件名
path.extname() 的语法格式
path.extname(path)
参数
path 必选参数,字符串,表示文件路径
返回值:
一个字符串 ,获取到的文件的扩展名字符串
未完待续!
如有不对,请指正,谢谢!