Node基础__介绍
为什么要学习服务器端开发基础
1.能够和后端程序员更加紧密的配合
2.网站业务逻辑前置,学习前端技术需要后端技术支撑(Ajax)
3.扩宽知识视野,能够站在更高的角度审视整个项目
服务器端开发要做的事情
1.实现网站的业务逻辑 2.实现网站的业务逻辑
为什么选择Node
1.Node是使用JavaScript语法 2. 一些公司要求前端工程师掌握
3.生态系统活跃,有大量开源库可以使用
4.前端大多开发工具基于Node开发
Node是什么--Node是一个基于Chrome V8引擎的JavaScript代码运行环境
简单说:Node是代码运行环境
Node运行环境搭建
1.下载Node并安装 官网:https://nodejs.org/en/
2.PATH环境变量 将Node安装目录添加到环境变量中
Node.js 的组成
1.JavaScript 由三部分组成,ECMAScript,DOM,BOM
2.Node.js是由ECMAScript及Node 环境提供的一些附加API组成的,包括文件、网络、路径等等一些更加强大的 API。
Node基础语法
所有ECMAScript语法在Node环境中都可以使用
1 执行命令 node app.js 使用Node命令执行后缀为.js的文件
Node.js全局对象global
1. 在浏览器中全局对象是window,在Node中全局对象是global。
2.Node中全局对象下有以下方法,可以在任何地方使用,global可以省略
console.log() 在控制台中输出
setTimeout() 设置超时定时器
clearTimeout() 清除超时时定时器
setInterval() 设置间歇定时器
clearInterval() 清除间歇定时器
Node.js模块化开发
1.JavaScript在使用时存在两大问题,文件依赖和命名冲突
2.一个功能就是一个模块,多个模块可以组成完整应用,抽离一个模块不会影响其他功能的运行。
3.Node.js规定一个JavaScript文件就是一个模块,模块内部定义的变量和函数默认情况下在外部无法得到
4.模块内部可以使用exports对象进行成员导出, 使用require方法导入其他模块
5.exports是module.exports的别名(地址引用关系),导出对象最终以module.exports为准

系统模块
什么是系统模块: Node运行环境提供的API. 因为这些API都是以模块化的方式进行开发的, 所以我们又称Node运行环境提供的API为系统模块
①系统模块名称引入 const fs = require('fs')
② 使用系统模块的方法 fs.reaFile('文件路径/文件名称'[,'文件编码'], callback); //[]可选参数 callback 回调函数
读取文件

写入文件 const fs = require('fs')
fs.writeFile('./demo.txt', '写入的内容’ , err=> { xxx}
系统模块path
路径拼接: path.join
1.不同系统的路径分隔符不统一
//导入path模块 const path = require('path') //路径拼接 let addPath = path.join('aaa' ,'bb' , 'c'); //输出结果 aaa/bb/c
绝对路径
__dirname :得到当前文件的绝对路径 再使用 path.join(__dirname ,'xxx')拼接
第三方模块
什么是第三方模块: 别人写好的、具有特定功能的、我们能直接使用的模块即第三方模块,由于第三方模块通常都是由多个文件组成并且被放置在一个文件夹中,所以又名包。
第三方模块有两种存在形式:
①:以js文件的形式存在,提供实现项目具体功能的API接口
②:以命令行工具形式存在,辅助项目开发
获取第三方模块
npmjs.com:第三方模块的存储和分发仓库
npm (node package manager) : node的第三方模块管理工具
下载:npm install 模块名称
卸载:npm unintall package 模块名称
全局安装与本地安装
命令行工具:全局安装
库文件:本地安装
第三方模块 nodemon:
使用npm install nodemon –g 下载它 是一个命令行工具
nodemon命令替代node命令执行文件 保存自动刷新
第三方模块 nrm 切换下载地址
1.使用npm install nrm –g 下载它
2.查询可用下载地址列表 nrm ls
3.切换npm下载地址 nrm use 下载地址名称 选择:npm.taobao.org

浙公网安备 33010602011771号