初识nodejs
思考:为什么JavaScript可以在浏览器中被执行
不同的浏览器中使用不同的JavaScript解析引擎:
- Chrome浏览器 => v8
- Firefox 浏览器 => OdinMondkey(奥丁猴)
- Safri浏览器 => Jscore
- IE浏览器 => Chakra(查克拉)
- etc...
其中,Chrome的v8解析引擎的性能最好
浏览器中的JavaScript运行环境
运行环境是指代码正常运行所需的必要环境
总结:
nodejs简介
什么是Node.js
\(Node.js is JavaScript runtime built on Chrome's v8 JavaScript engine.\)
Node.js 是一个基于Chrome V8 引擎的JavaScript运行环境。
Node.js中的JavaScript运行环境
浏览器是JavaScript的前端运行环境
Node.js是JavaScript的后端运行环境
Node.js中无法调用DOM和BOM等浏览器内置API。
nodejs可以做什么
Node.js作为一个JavaScript的运行环境,仅仅提供了基础的功能和API。然而,基于Node.js提供的这些基础能,很多强大的工具和框架如雨后春笋,层出不穷,所以学会了Node.js,可以让前端程序员胜任更多的工作和岗位。
nodejs环境,LTS版本和Current版本的不同
- LTS为长期稳定版,对于最求稳定性的企业级项目来说,推荐安装LTS版本的Node.js
- Current为新特性尝鲜版,对于热衷于尝试新特性的用户来说,推荐安装Current版本的Node.js。但是,Current版本中可能存在隐藏的Bug或安全性漏洞,因此不推荐在企业级项目中使用Current版本的Node.js
fs文件系统模块
什么是fs文件系统模块
fs模块是Node.js官方提供的、用来操作文件的模块。它提供了一系列的方法和属性,用来满足用户对文件的操作需求。
例如:
如果要在JavaScript代码中,使用fs模块来操作文件,则需要使用如下方式先导入它:
const fs = require('fs')
读取指定文件中的内容
fs.readFile()的语法格式
使用fs.readFile()方法,可以读取指定文件中的内容,语法格式如下:
fs.readFile(path[,options],callback)
参数解读:
判断文件是否读取成功
使用if进行判断,如果error为null,如果error为null则读取成功。否则读取失败。
向指定文件写入内容
fs.writeFile()的语法格式
使用fs.write()方法,可以向指定的文件中写入内容,语法格式如下:
fs.writeFile(file,data[,options],callback)
参数解读:
fs模块-路径动态拼接的问题
在使用fs模块操作文件时,如果提供的操作路径是以./或../开头的相对路径时,很容易出现路径动态拼接错误的问题。
原因:代码在运行的时候,会议执行node命令时所处的目录,动态拼接处被操作文件的完整路径。
解决方案:在使用fs模块操作文件时,直接提供完整的路径,不要提供./或者../开头的相对路径,从而防止路径动态拼接问题。
但是以上绝对路径又太过繁琐,不利于移植和维护,这时node为我们提供了一个变量--dirname
表示当前文件所处的目录。
path路径模块
什么是path路径模块
path模块是Node.js官方提供的、用来处理路径的模块。它提供了一系列的方法和属性,用来满足用户对路径的处理需求。
例如:
如果要在JavaScript代码中,使用path模块来处理路径,则需要使用如下的方式先导入它:
const path = require('path')
路径拼接
path.join()的语法格式
使用path.join()方法,可以把多个路径片段拼接位完整的路径字符串,语法格式如下:
path.join([...paths])
参数解读:
- ...paths<string> 路径片段的序列
- 返回值:<sting>
path.join()的代码示例
使用path.join()方法,可以把多个路径片段拼接位完整的路径字符串:
const pathStr = path.join('\a','\b\c','..\','e')
console.log(pathStr); // 输出 \a\b\d\e
const pathStr2 = path.join(__dirname,'./files/1.txt')
console.log(pathStr2) // 输出 当前文件所处目录\files\1.txt
今后凡是涉及到路径拼接的操作,都要使用path.join()方法进行处理。不要直接使用+进行字符串拼接。
获取路径中的文件名
path.basename()的语法格式
使用path.basename()方法,可以获取路径中的最后一部分,经常通过这个方法获取路径中的文件名,语法格式如下:
path.basename(path[,ext])
参数解读:
- path<sting> 必选参数,表示路径的字符创
- ext<string> 可选参数,表示文件扩展名
- 返回:<sting> 表示路径中的最后一部分
获取路径中的文件扩展名
path.extname()的语法格式
使用path.extname()方法,可以获取路径中的扩展名部分,语法格式如下:
path.extname(path)
参数解读:
-
path<string>必选参数,表示一个路径的字符串
-
返回:<string>返回得到的扩展名字符串
reg.exec()
方法用来将传入参数解析成为一个字符串数组,其数组的第一个元素则是正则表达式匹配的结果。
版权声明:本文内容由互联网用户自发贡献,该文观点与技术仅代表作者本人。本站仅提供信息存储空间服务,不拥有所有权,不承担相关法律责任。如发现本站有涉嫌侵权/违法违规的内容, 请发送邮件至 dio@foxmail.com 举报,一经查实,本站将立刻删除。