Node.js是什么
Node.js® 是一个基于 Chrome V8 引擎 的 JavaScript 运行时。
名词解释
-
chrome V8引擎:
-
chrome: chrome浏览器
-
引擎:用来解析和执行代码的工具。
汽车发动机引擎可以将燃油转成动力; JS解析引擎可以将代码转成最终的效果
-
V8:项目的代号
-
-
运行时:理解为一个容器,用来运行代码的环境;
Node.js可以做什么
Node.js 作为一个 JavaScript 的运行环境,仅仅提供了基础的功能和 API,而基于 Node.js,程序员实现了很多强大的工具和框架。
具体来说:
- 后端API接口。基于Node.js环境 + Express框架,
- 桌面应用。基于Node.js环境 + Electron 框架
- 操作数据库。基于Node.js环境 + MySql包 读写和操作数据库
- 实用的命令行工具。基于Node.js环境,实现的 vuecli,webpack等
- etc…
总之,Node.js 是大前端时代的“大宝剑”,有了 Node.js 这个超级 buff 的加持,前端程序员的行业竞争力会越来越强!
Node.js为什么要学习
-
给学习前端框架,工具打下基础
-
更深入的模块化
-
了解服务器后端工作
-
增加职场竞争力
下装安装Nodejs
下载
- LTS: 长期稳定版(Long Term Support)。 项目开发建议使用长期稳定版
- Current: 最新尝鲜版 。最新版包含了一些新功能,如果想学习最新的功能,则可以使用该版本。最新版可能会有一些未知的bug。
点击左侧的按钮(有LTS标识的那个),会立即下载,注意:不同系统选择对应的安装文件。
安装
-
找到你下载的安装包(不同的版本有不同的安装包)
-
双击安装文件开始安装
傻瓜式安装,一路
next
即可
注意:
- 建议安装目录所使用
英文路径
(不要安装在类似于 d:/软件/node) - 安装完成之后, 它不会在桌面出现快捷图标
测试是否安装成功
打开终端,在终端的命令窗口中输入 node -v 命令,按下回车键。
如果在终端窗口中能够打印出 Node.js 的版本号,就证明 Node.js 已经安装成功,完全满足后续的学习需求。
Nodejs中的模块分类
什么是模块
每个模块都是一个独立的文件。每个模块都可以完成特定的功能,我们需要时就去引入它们,并调用。
node.js模块的分类
- 核心模块
- nodejs自带的模块。安装nodejs之后可以直接使用。相当于学习js时使用的alert,confirm等函数。
- 第三方模块
- 其他程序员写好的模块。例如我们前面学习的JQuery库,artTemplate等。
- nodejs提供了一个专门的工具npm来管理第三方模块,后面我们会专门讲到。
- 自定义模块
- 程序员自己写的模块。相当于我们在学习js时的自定义函数。
- 对于node.js来说,Express 是一个第三方模块,有丰富的 API 支持,强大而灵活的中间件特性
- Express 不对 Node.js 已有的特性进行二次抽象,只是在它之上扩展了 Web 应用所需的基本功能
- 参考链接:Express 官网 Express 中文文档(非官方) Express GitHub仓库
核心模块
核心模块就是 Node 内置的模块,安装完Nodejs之后,开箱即用
-
每个核心模块都有唯一的标识名称(fs, path,querystring,http…)
-
核心模块有很多个,每个模块都有自己的作用,这里有文档。
-
使用步骤都是先导入,再使用来进行获取。每一个核心模块基本上都是暴露了一个对象,里面包含一些方法供我们使用。一般在加载核心模块的时候,变量(或常量)的起名最好就和核心模块的标识名同名。
框架 — Express
Express 是一个基于 Node.js 平台,快速、开放、极简的 web 开发框架
- web 开发: 对不同的请求能够显示页面;提供接口服务;
- 框架是一个半成品,用来快速解决一类问题;框架:bootstrap, lay-ui, express, vue;
- 库就是工具集,通过调用api来完成具体的功能。 库:zepto.js , jQuery, day.js, , react ,underscore, lodash, art-template, axios, echart…