目录
?# NodeJS基础与实战
Node是一个基于Chrome V8引擎的JavaScript代码运行环境。
运行环境:
浏览器(软件)能够运行JavaScript代码,浏览器就是JavaScript代码的运行环境
Node(软件)能够运行JavaScript代码,Node就是JavaScript代码的运行环境
1. 错误代号2502、2503
失败原因:系统帐户权限不足。
解决办法:
1.以管理员身份运行powershell命令行工具
2.输入运行安装包命令 msiexec /package node安装包位置
2. 执行命令报错
失败原因:Node安装目录写入环境变量失败
解决办法:将Node安装目录添加到环境变量中
存储系统中的目录,在命令行中执行命令的时候系统会自动去这些目录中查找命令的位置。
比如:将迅雷的exe文件目录添加到系统变量path当中,在命令行中就可以用thunder来打开迅雷
JavaScript 由三部分组成,ECMAScript,DOM,BOM。
Node.js是由ECMAScript及Node环境提供的一些附加API组成的,包括文件、网络、路径等等一些更加强大的 API。
所有ECMAScript语法在Node环境中都可以使用
在Node环境下执行代码,使用Node命令执行后缀为.js的文件即可
命令行使用小技巧:
在浏览器中全局对象是window,在Node中全局对象是global。
Node中全局对象下有以下方法,可以在任何地方使用,global可以省略。
JavaScript在使用时存在两大问题,文件依赖和命名冲突。
一个功能就是一个模块,多个模块可以组成完整应用,抽离一个模块不会影响其他功能的运行。
导入模块时.js后缀可以省略
exports是module.exports的别名(地址引用关系),导出对象最终以module.exports为准
导出多个成员时使用:
module.exports = {
name: 'zhangsan',
...
}
导出单个成员时使用:
exports.version = version;
Node运行环境提供的API. 因为这些API都是以模块化的方式进行开发的, 所以我们又称Node运行环境提供的API为系统模块
举例:读取同目录下helloworld.js的内容
// 1.通过模块的名字fs对模块进行引用
const fs = require('fs');
// 2.通过模块内部的readFile读取文件内容
fs.readFile('./01.helloworld.js', 'utf8', (err, doc) => {
// 如果文件读取出错err 是一个对象 包含错误信息
// 如果文件读取正确 err是 null
// doc 是文件读取的结果
console.log(err);
console.log(doc);
});
==注意:如果文件读取正确 err是 null==
举例:向同级目录下demo.txt写内容,demo.js不存在则自动创建
const fs = require('fs');
fs.writeFile('./demo.txt', '即将要写入的内容', err => {
if (err != null) {
console.log(err);
return;
}
console.log('文件内容写入成功');
})
为什么要进行路径拼接:
大多数情况下使用绝对路径,因为相对路径有时候相对的是命令行工具的当前工作目录
在读取文件或者设置文件路径时都会选择绝对路径
使用__dirname获取当前文件所在的绝对路径
举例:读取绝对路径下的helloworld.js
const fs = require('fs');
const path = require('path');
console.log(__dirname);
console.log(path.join(__dirname, '01.helloworld.js'))
fs.readFile(path.join(__dirname, '01.helloworld.js'), 'utf8', (err, doc) => {
console.log(err)
console.log(doc)
});
别人写好的、具有特定功能的、我们能直接使用的模块即第三方模块,由于第三方模块通常都是由多个文件组成并且被放置在一个文件夹中,所以又名包。
第三方模块有两种存在形式:
以js文件的形式存在,提供实现项目具体功能的API接口。
以命令行工具形式存在,辅助项目开发
下载:npm install 模块名称
卸载:npm unintall package 模块名称
全局安装与本地安装:
命令行工具:全局安装
库文件:本地安装
nodemon是一个命令行工具,用以辅助项目开发。
在Node.js中,每次修改文件都要在命令行工具中重新执行该文件,非常繁琐。
使用步骤:
1.使用npm install nodemon –g 下载它
2.在命令行工具中用nodemon命令替代node命令执行文件
nrm ( npm registry manager ):npm下载地址切换工具
npm默认的下载地址在国外,国内下载速度慢
使用步骤:
1.使用npm install nrm –g 下载它
2.查询可用下载地址列表 nrm ls
3.切换npm下载地址 nrm use 下载地址名称
基于node平台开发的前端构建工具
将机械化操作编写成任务, 想要执行机械化操作时执行一个命令行命令任务就能自动执行了,用机器代替手工,提高开发效率。
原文:https://www.cnblogs.com/garyxi/p/12093240.html