【学习笔记】node.js重构路由功能
摘要:利用node.js模块化实现路由功能,将请求路径作为参数传递给一个route函数,这个函数会根据参数调用一个方法,最后输出浏览器响应内容
1.介绍
node.js是一个基于Chrome V8引擎的JaveScript运行环境,简单来说就是运行在服务端的JavaScript,是一个事件驱动、非阻塞式的I/O模型,速度快,性能好。前端的蓬勃发展除了各大框架的流行之外,还有因为node.js的兴起,这使得前台和后台的数据交互更加便捷更加轻松。由此也产生了一个新的概念——全栈工程师,一个全栈工程师可以完成前端页面架构还可以完美实现后台数据的交互,熟练掌握node.js已经成为每位前端工作者基本技能。
2.使用
与node.js打包下载的还有一个叫NPM的安装包管理工具,能解决node.js代码部署上很多问题。我们可以利用npm工具使用第三方包或命令行程序,也可以上传自己编写的包或命令行程序供别人使用。npm安装第三方包的过程也十分简便,windows系统用cmd打开命令行,输入npm install +(包的名称,例如webpack)就行。
3.模块化
3.1模块的输入与输出
Node.js 的模块分为两类,一类为原生(核心)模块,一类为文件模块。原生模块在 Node.js 源代码编译的时候编译进了二进制执行文件,加载的速度最快。另一类文件模块是动态加载的,加载速度比原生模块慢。但是 Node.js 对原生模块和文件模块都进行了缓存,于是在第二次 require 时,是不会有重复开销的。其中原生模块都被定义在 lib 这个目录下面,文件模块则不定性。
文件模块可以是JavaScript代码文件(.js作为文件后缀)、也可以是JSON格式文本文件(.json作为文件后缀)、还可以是编辑过的C/C++文件(.node作为文件后缀)。文件模块输入方式通过require('/文件名.后缀'),require('./文件名.后缀'),requrie('../文件名.后缀') ,文件后缀可以省略;以"/"开头是以绝对路径去加载,以"./"开头和