bebugger调试理解commonJS原理

上面图片是bebugger一个导入的模块,使用vscode可以轻松的看到调用栈,通过断点调试进入断点

Mode函数的原型里面有一个require方法,函数里面有Module._load()加载模块,传入导入的路径地址和当前实例

里面的主要函数有Module._resolveFilename,该方法是解析路径的,把相对路径变成绝对路径的,尝试加载各种文件类型如JS或者JSON等等
 

Module._cache是模块的缓存对象,如果模块有缓存,则返回导出内容,如果不是则创建一个模块

 创建模块,将模块写入缓存,尝试加载模块

 

扫描二维码关注公众号,回复: 4995035 查看本文章

根据文件的后缀加载各种类型的文件

读取文件,将文件内容编译出来,用闭包函数包裹

 

猜你喜欢

转载自www.cnblogs.com/wuxianqiang/p/10294605.html