簡體   English   中英

Node.js-重復的require('path'/'module')語句

[英]Node.js - Repetitive require('path'/'module') statements

我的問題是,使用多個相同的require('path'/'module')語句是否會對性能產生負面影響。

// Multiple require('path') statements
const express = require("express");
const app = express();

app
  .route("/example")
  .get(require("./api/api.js").example.get)
  .put(require("./api/api.js").example.put)
  .post(require("./api/api.js").example.post)
  .delete(require("./api/api.js").example.delete);

與..相比

// Single require('path') statement
const express = require("express");
const app = express();

const api = require("./api/api.js");
app
  .route("/example")
  .get(api.example.get)
  .put(api.example.put)
  .post(api.example.post)
  .delete(api.example.delete);

它可能會影響性能,但影響很小。 同一模塊的多個require (或import )不會再次運行該模塊的代碼-它所做的只是訪問內存中已經存在的模塊的導出。 出於性能考慮絕對不必擔心。 這與一次又一次地訪問對象的相同屬性非常相似。

為了提高可讀性,第二個代碼更加清晰,盡管您可以通過首先提取example屬性來進一步減少重復性(並以微不足道的數量提高性能):

const { example } = require("./api/api.js");
app
  .route("/example")
  .get(example.get)
  .put(example.put)
  .post(example.post)
  .delete(example.delete);

暫無
暫無

聲明:本站的技術帖子網頁,遵循CC BY-SA 4.0協議,如果您需要轉載,請注明本站網址或者原文地址。任何問題請咨詢:yoyou2525@163.com.

 
粵ICP備18138465號  © 2020-2024 STACKOOM.COM