开启前端全栈之路—— node 基础

Node开发概述

为什么要学习服务器端开发基础

  • 能够和后端程序员更加紧密的配合。
  • 网站业务逻辑前置,学习前端技术需要后端技术支撑(Ajax)。
  • 扩展知识视野,能够站在更高的角度审视整个项目。

服务器端开发要做的事情

  • 实现网站的业务逻辑。
  • 数据的增删改查。

为什么选择Node

  • 使用 JavaScript 语法开发后端应用。
  • 一些公司要求前端工程师掌握 Node。
  • 生态系统活跃,有大量开源库可以使用。
  • 前端开发工具大多基于 Node 开发。

Node是什么

1.Node 是一个基于 Chrome V8引擎的 JavaScript 代码运行环境。
2.运行环境:* 浏览器(软件)能够运行 JavaScript 代码,浏览器就是 JavaScript 代码的运行环境。* Node(软件)能够运行 JavaScript 代码,Node 就是 JavaScript 代码的运行环境。

Node运行环境搭建

1.环境安装: Node官网

Node.js快速入门

Node.js组成

  • JavaScript 由三部分组成,ECMAScript、DOM、BOM。
  • Node.js 是由ECMAScriptNode环境提供的一些附加App组成的,包括文件、网络、路径等等一些更加强大的API。

Node.js的基础语法

所有 ECMAScript 语法在 Node 环境中都可以使用。

Node.js模块化开发


JavaScript 开发弊端

1.JavaScript 在使用时存在两大问题:文件依赖命名冲突。* 文件依赖

一个功能就是一个模块,多个模块可以组成完整应用,抽离一个模块不会影响其他功能的运行。

Node.js模块化开发规范

1.Node.js规定一个JavaScript文件就是一个模块,模块内部定义的变量和函数默认情况下在外部无法得到。2.模块内部可以使用exports对象进行成员导出,使用require方法导入其他模块。

1.module.exports.version = version
2.module.exports.sayHi = sayHi exportsmodule.exports的别名(地址引用关系),导出对象最终以module.exports为准
3.当 exports 对象和 moudle.exports对象指向的不是同一个对象时,以module.exports为准。

系统模块

什么是系统模块

Node 运行环境提供的 API都是以模块化的方式进行开发的,所以我们又称 Node 运行环境提供的 API 为系统模块。

系统模块fs文件操作

f:file 文件;s:sysstem 系统,文件操作系统。 const fs = require('fs');

1.读取文件内容 fs.readFile('文件路径/文件名称'[,'文件编码'],callback);
2.读取文件语法示例

// 读取上一级 css 目录下的 base.css
fs.readFile('../css/base.css','utf-8'(err,doc) => {
	// 如果文件读取发生错误,参数 err 的值为错误对象,否则 err 的值为 null。
	// doc 参数为文件内容
	if(err == null){
		// 在控制台输出文件内容
		console.log(doc)
	}
}) 

文件写入内容

fs.writeFile('文件路径/文件名称','数据',callback)

const content = '<h3>正在使用 fs.writeFile 写入文件内容</h3>'
fs.writeFile('../index.html',content,err ==> {
	if(err != null){
		console.log(err)
		return
	}
	console.log('文件写入成功')
}) 

如果写入的文件不在选择的文件路径下,系统会自动创建这个文件,

系统模块 path 路径操作

为什么要进行路径拼接?

1.不同操作系统的路径分割符不统一。
2./public/upload/avatar
3.Windows 上是 \ /
4.Linux 上是 /

路径拼接语法

path.join('路径','路径'...)

// 导入 path 模块
const path = require('path')
// 路径拼接
let finialPath = path.join('itcast','a','b','c.css')
// 输出结果 itcast\a\b\c.css 

相对路径 VS 绝对路径

  • 大多数情况下使用绝对路径,因为相对路径有时候相对的是命令行工具的当前工作目录。
  • 在读取文件或者设置文件路径时都会选择绝对路径。
  • 使用 __dirname 获取当前文件所在的绝对路径。

第三方模块


什么是第三方模块

别人写好的、具有特定功能的、我们能直接使用的模块即第三方模块,由于第三方模块通常都是由多个文件组成并且被放置在一个文件夹中,所以又名包。

第三方模块有两种存在形式

  • 以 js 文件的形式存在,提供实现项目具体功能的 API 接口。
  • 以命令行工具形式存在,辅助项目开发。

获取第三方模块

第三方模块的存储和分发 npm(node package manager ):node 的第三方模块管理工具。

1.下载:npm install 模块名称
2.卸载:npm uninstall 模块名称
3.本地安装:将模块下载到当前项目中,供当前的项目使用。
4.全局安装:将模块下载到一个公共的目录中,所以项目都可以使用。* 命令行工具:全局安装。* 库文件:本地安装。

第三方模块 nodemon

1.nodemon 是一个命令行工具,用以辅助项目开发。
2.在 Node.js 中,每次修改文件都要在命令行工具中重新执行该文件,非常繁琐。
3.使用步骤* 使用 npm install nodemon -g 下载它。* 在命令行工具中用 nodemon 命令代替 node 命令执行文件。

第三方模块 nrm

1.nrm(npm registry manager):npm 下载地址切换工具。
2.npm 默认的下载地址在国外,国内下载速度慢。

3.使用步骤* 使用 npm install nodemon -g 下载它。* 在命令行工具中用 nodemon 命令代替 node 命令执行文件。

第三方模块 nrm

1.nrm(npm registry manager):npm 下载地址切换工具。
2.npm 默认的下载地址在国外,国内下载速度慢。
3.使用步骤* 使用 npm install nrm -g 下载它。* 查询可用下载地址列表 nrm ls。* 切换 npm 下载地址 nrm use 下载地址名称。

最后

整理了一套《前端大厂面试宝典》,包含了HTML、CSS、JavaScript、HTTP、TCP协议、浏览器、VUE、React、数据结构和算法,一共201道面试题,并对每个问题作出了回答和解析。

有需要的小伙伴,可以点击文末卡片领取这份文档,无偿分享

部分文档展示:



文章篇幅有限,后面的内容就不一一展示了

有需要的小伙伴,可以点下方卡片免费领取

  • 1
    点赞
  • 0
    收藏
    觉得还不错? 一键收藏
  • 0
    评论
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值