require require(path)将文件以一个对象记载进来,模块只有在加载时初始化一次,require得到的可以理解为一个引用,以export导出当前文件的导出对象
export
module js中一个文件是一个模块
通过命令行传递的js 为主模块,node a.js 则a.js 是程序的入口
模块路径解析
- 内置模块,不作路径解析,直接加载
- node_module ,从当前路径开始,逐级向父目录查找,node_modle文件夹,直到找到为止
- require("directory") :
在require 目录时候,假设路径为一个包,先寻找包定义文件package.jason,若无package.jason则认为主文件为index.js加载index.js,若index.js不存在则require失败
js require 会逐条执行文件中的语句
express:
app = express();
app.use(fun):
注册中间件,接收大中间件,按注册先后顺序,调用下一个中间件,函数中有next()函数,则继续调用下一个中间件,若有参数表示出错
app.use(path,fun)表示相应路径的请求,交给fun 中间件处理
app.all(path)表示所有的请求(get delete post put)都需要经过该中间件
.get
.post
.delete
.put
express其他函数
router = epress.Router()
router.get(path,fun)
router.route(path)
.post(req,res){...}
.get(req,res){...}
app.use("/", router);
use 必须在http动词之前
router.param url中的参数进行处理
function.bind(obj):
替换func中的this 为obj