一、node.js背景介绍
1.node.js是服务端单独运行js文件的一个平台。
node.js提供了很多js后端开发的代码库。
2.node.js和脚本js代码区别:
2.1 以前js文件是纯前端脚本语言,由浏览器解析运行
2.2 node帮助我们把js脚本脱离浏览器单独拿出来,当做一门语言来进行运行
3.3node.js不能执行javascript中的BOM和DOM操作,只能运行ECMAScript语法
二、node.js服务器特点
1.单线程机制:
1.1java、php等其他语言服务器,都是多线程,每次连接都会启动一次服务
1.2node.js服务器不为每一个服务器创建一个线程,全部由一个线程处理
2.通过非阻塞IO和事件驱动机制来实现多事件触发
2.1 非阻塞IO:通过回调函数方式来实现事件步伐
2.2 事件驱动:通过事件环的方式进行循环调度和等待
三、node的REPL环境
1.REPL全称:R(read)、E(evaluate)、P(print)、L(loop)
最常用的REPL环境:浏览器审查元素的console控制台
2.repl环境作用
2.1每一次repl环境的启动,就是js编程的全局作用域
2.2可以在repl环境中进行部分代码调试和运行
四、node执行js文件
cmd跳转到js文件的目录下,执行命令进行js文件执行。格式:node 文件名.js(".js"可省略)
五、node环境搭建
1.建议使用nvm安装:
nvm:node version manager(node版本管理工具)
nvm中可以配置多个node版本对象,在使用过程中直接通过nvm进行切换即可,不需要重复卸载安装。
2.安装流程:
2.1.下载nvm包并解压到全英文路径下,地址为:https://github.com/coreybutler/nvm-windows
2.2 配置settings.txt文件红root和path属性
2.3 配置环境变量:NVM_HOME(配置上一步的root路径)、NVM_SYMLINK(配置上一步的path路径)、PATH(通过%%的方式引用NVM_HOME和NVM_SYMLINK)
2.4 nvm命令行操作: nvm -v 、 nvm ls 、 nvm use 版本号、nvm install 版本号、nvm uninstall 版本号。
2.5 webstorm中设置代码提示:file->setting->languages->node.js and npm->设置node.exe路径
七、案例代码
node.js创建web服务器模版
"use strict";
// 1)require方式引包
let hp = require("http");
// 2)创建服务器,并启动一个回调函数(表示有客户端连接后需要干的事情)
var server = hp.createServer(function(request,response){
console.log("有客户端连接服务器。。。。");
response.writeHeader("Content-Type:text/html;charset=utf-8");
response.write("Hello world!");
response.end();
});
cons
// 3)让服务器监听一个端口,并启动一个回调函数(表示服务器启动后需要干的事情)
server.listen(9090,function (error) {
if(error)throw error;
console.log("服务器创建成功!");
})