1.1 Node开发概述
1.1.1 为什么要学习服务器端开发基础★★★★
思考如下几个问题:
- 问题一:你玩游戏的数据是如何保存的?
- 问题二:注册登陆的结果是如何返回的?
能够和后端程序员更加紧密的配合网站业务逻辑前置,学习前端技术需要后端技术支撑(Ajax)扩宽知识视野,能够站在更高的角度审视整个项目
我们的游戏等级,个人信息的保存,注册登陆,会员管理,都需要服务器技术。
1.1.2 服务器端开发要做的事情★★★★
- 实现网站的业务逻辑:注册登陆,订单提交,加入购物车等
- 数据的增删改查:增加用户,删除商品,修改信息,查询信息等
1.1.3 为什么选择Node ★★★
- 使用JavaScript语法开发后端应用
- 前端开发工具大多基于Node开发 vue打包 react打包等
- 一些公司要求前端工程师掌握Node开发
- 生态系统活跃,有大量开源库可以使用
1.1.4 Node是什么★★★
Node是一个基于Chrome V8引擎的JavaScript代码运行环境。
- 浏览器(软件)能够运行JavaScript代码,浏览器就是JavaScript代码的运行环境
- Node(软件)能够运行JavaScript代码,Node就是JavaScript代码的运行环境
1.2 Node运行环境搭建
1.去官网找到自己环境需要包http://nodejs.cn/
2.下载完成后,双击安装包,开始安装,一直点next即可,安装路径默认在C:\Program Files下,也可以自定义修改
安装参数说明:
Node.js runtime 表示运行环境
npm package manager表示npm包管理器
online documentation shortcuts 在线文档快捷方式
Add to PATH添加到环境变量
3.安装完成如图所示,这里我修改了node的安装路径C:\node
4.安装完成后,.msi格式的安装包已经将node启动程序添加到系统环境变量path中,查看系统变量验证
5.既然已经将node程序添加到全局系统变量,我们可以直接在CMD窗口中任意位置执行node,打开CMD窗口,执行命令node -v查看node版本
6.最新版的node在安装时同时也安装了npm,执行npm -v查看npm版本
1.2.2 Node环境安装失败解决办法★★★
错误原因:
不是以管理员的身份运行的,没有权限
1.打开安装程序时,弹出以下窗口声明2503代码
2.此时,在WIN搜索框搜索powershell,右击
3.点击使用管理员身份运行powershell命令行工具
4.输入运行安装包命令msiexec /package node安装包位置
5.回车,正常打开安装包,根据提示安装即可
1.2.3 PATH环境变量★★★
存储系统中的目录,在命令行中执行命令的时候系统会自动去这些目录中查找命令的位置。
配置步骤:
1.首先鼠标右键“我的电脑”,点击“属性”,如图:
2.点击“高级系统设置”
3.点击底部的“环境变量”
4.打开环境变量窗口,这里分当前登录系统的用户的环境变量,和系统环境变量,为了避免因多个用户登录这个系统,重复配置,可以直接配置“系统环境变量”
5.在系统变量里,找到“Path”,并选中它,然后点击“编辑”
6.然后进入编辑环境变量窗口
7.点击右上角的“新建”,然后在下面输入所需配置
8.配置完后,点击“确定”,后面两个窗口的确定也需要点击,也就是需要点击三个确定,才算完成。
1.3 Node.js快速入门
1.3.1 Node.js 的组成★★★
JavaScript的标准是ECMAScript,浏览器可以解析js 提供dom bom,node可以解析js提供一些附加的API
1.如何在node环境下运行js文件
1.3.2 Node.js基础语法★★★
搭建基本服务
// 引入模块
var http=require('http')
// 搭建服务
var app=http.createServer(function(请求,响应){
响应.end('<h1>hello node server run </h1>');
})
// 监听端口
app.listen('3000')
- 在当前文件夹下,地址栏 cmd 回车 打开命令行
- 在命令行写入 node 当前文件名 回车
- 打开浏览器,地址栏输入127.0.0.1:3000 回车
可以看到欢迎页面
cmd命令管理
1.首先找到文件所在的位置
2.进入文件夹的命令是:
①node+空格文件名.js
②cd+空格+文件名
2.nodejs的组成
nodejs自有语法规则+ECMAScript语法
nodejs里面没有浏览器(window)
nodejs下面也有一个全局变量:location
setTieout(funciton(){
console.log(1)
},1000) //可在命令里执行
window.console.log(1)//执行不了
//命令里可用
function(){
console.log(1)
}
var re=/\d+/g
const a=1;
let b=2;
const arr=[1,2,3];
arr.push(4)
console.log(arr) //1,2,3,4
3.node到底能做什么?
为前台提供所需要渲染的数据,调接口
总结:
1.node环境搭建;
2.node基础语法。