You need to enable JavaScript to run this app.
优惠活动
大模型
产品
解决方案
定价
更多

Node.js中require('http')放置位置:函数内还是外?求最佳实践

Node.js里require('http')放函数外还是内?最佳实践看这里

直接给结论:推荐把require('http')放在函数外部,原因很实在:

  • 符合社区常规写法:Node.js社区默认把所有依赖声明集中在文件最顶部,别人看代码时扫一眼开头就知道这个模块依赖了哪些东西,不用钻进函数里找,可读性拉满。
  • 模块加载机制决定性能无差异:Node.js的require是同步的,而且模块加载后会被缓存——不管你把require('http')放哪儿,这个核心模块只会被加载一次,两种写法在性能上没区别。
  • 你的场景更适合外部声明:你的这个模块只会被index.js引入一次,对应的函数也只会执行一次,放外部完全没问题,还能让代码结构更清晰。

调整后的规范代码:

// this file is required once by index.js
const http = require('http'); // 放在文件顶部

function exported(app) {
  return http.createServer(app).listen(process.env.PORT || 3000, () => {
    console.log('DEBUG: express:  started');
  });
}

module.exports = exported;

内容的提问来源于stack exchange,提问作者alex

相关产品推荐
方舟 Agent Plan

超全模态模型 × Harness 升级,最新支持 Deepseek-V4.1-Flash、GLM-5.3 系列、Doubao-Seedream-5.0-pro、Kimi-K3 (部分), 限时 9.9 元起

最近更新时间:2026.08.03 19:35:20