nodejs中require方法是同步还是异步操作?为什么?

发布于 2021-01-11 17:25:54
关注者
0
被浏览
2597
3 个回答
  • 面试哥
    面试哥 2021-01-12
    为面试而生,有面试问题,就找面试哥。

    同步
    因为经常用到模块,并且一般都在模块顶端引入,所以把require做成同步,有助于代码整洁有序,增强可读性。
    但是,I/O密集的地方尽量不要用require。所有的同步,都会阻塞Node,直到调用完才能做其他事。
    比如,在运行一个http服务,如果在每个请求上都用到require,就会遇到性能问题。
    所以,require和其他同步操作通常放在程序最初加载的位置。

  • 面试哥
    面试哥 2021-01-12
    为面试而生,有面试问题,就找面试哥。

    require是同步请求,require支持条件导入、动态导入等,因为require获取得到的是对应路径的module导出的内容。当导出内容发生变化时,再次导入得到的内容是最新的。读取文件采取的也是同步读取

知识点
面圈网VIP题库

面圈网VIP题库全新上线,海量真题题库资源。 90大类考试,超10万份考试真题开放下载啦

去下载看看