Node.js —— 优先从缓存加载

1、加载过的文件会缓存起来,不会重复执行里面的代码

2、判断模块标识(其实就是require参数)
(1)核心模块:本质也是js文件,只是已经被编译到二进制文件中了,我们只需要按照名字来加载即可
(2)第三方模块:凡是第三方模块都要通过npm下载,通过require(‘包名’)加载后才可以使用
    <1>不可能有任何一个第三方包和核心模块的名字是一样的
    <2>既不是核心模块也不是路径的模块:先找到当前文件所处目录的node_modules目录 ---> 找到自己需要的第三方模块目录 ---> 找到目录下的package.json文件 ---> 找到 package.json文件中的main属性 ---> main属性记录了该第三方模块的入口模块 ---> 加载使用第三方包(实际上最终加载的还是文件)
    <3>如果package.json文件不存在/main指定的入口模块也没有,则node会自动找该目录下的index.js
    <4>如果上面任何一个条件都不成立,则会进入上一级目录中的node_modules目录找,如果上一级还没有,就继续往上找,如果到目前磁盘的根目录还找不到,最后报错
(3)自定义模块

猜你喜欢

转载自blog.csdn.net/UNDEFINED_AUBE/article/details/80475070
今日推荐