先了解一下node是什么,有什么特点,可以干什么,经常干什么
【初识node】
官方文档记录:
- Node.js 是一个开源与跨平台的 JavaScript 运行时环境。
- Node.js 在浏览器外运行 V8 JavaScript引擎(Google Chrome 的内核)。
- Node.js 应用程序运行于单个进程中,无需为每个请求创建新的线程。
- Node.js 在其标准库中提供了一组异步的 I/O 原生功能(用以防止 JavaScript 代码被阻塞)。
- Node.js 中的库通常是使用非阻塞的范式编写的(从而使阻塞行为成为例外而不是规范)。
个人理解记录
Node.js是基于JS语言和V8引擎的开源Web服务器项目,是前端的服务器。
因为浏览器端的JS受制于需要用浏览器提供的接口,而Node.js完全没有这方面的限制,JS可以进行文件系统访问,网络操作等,并且Node.js 中,可以控制运行环境,这就意味着可以编写 Node.js 版本支持的所有现代的 ES6-7-8-9 JavaScript,所以Node.js更受头秃宝贝们欢迎。
【扩展知识点: 浏览器中的JS = ECMAScript核心(由ECMAScript规范实现)+Bom( 各个浏览器厂商根据 DOM在各自浏览器上的实现)+Dom(W3C 的标准; [所有浏览器公共遵守的标准])
Node中的JS = ECMAScript核心 (在 Node.js 中,可以毫无问题地使用新的 ECMAScript 标准,因为不必等待所有用户更新其浏览器,可以通过更改 Node.js 版本来决定要使用的 ECMAScript 版本,并且还可以通过运行带有标志的 Node.js 来启用特定的实验中的特性 ) + 全局成员(console.log, setTimeout setInterval)+模块系统成员(Node独有的核心模块)】
由于Node.js底层使用的V8引擎,然后再加上JS天然的异步IO处理机制buff,使得编写高效率高性能的web服务器变得轻而易举。
Node.js适用场景
根据Node.js的特性,Node.js常用来处理大量并发的IO(web端大部分都是繁复的IO操作),需要注意的是Node.js不适合做计算,遇到大量CPU型大量计算操作的,就由Jave,C,C++等实现。比如淘宝肯定不止一直语言实现的。Node.js 适用比如:1)用户表单收集 2)考试系统 3)聊天室 4)图文直播等
那么,Vue.js 和 Node.js 有什么关联呢?
准确的说是Vue.js 的周边 – Vue Router, 和 Node.js 有关系。Vue Router 是Vue的的官方路由,它与 Vue.js 核心深度集成,是针对单页应用而出的。而Vue Router是运行在服务端的,也就和nodeJs发生了关联。