express set()是否存储引用或值

我很好奇set('name',??)函数的工作方式。

我知道它正在将特定内容附加到get('name')可以使用的快速应用程序上。它存储的是对您所分配的内容的引用还是实际存储的值?

例如:

      //mysql2.js
      var mysql2 = require('mysql2');

      //Set up connection
      module.exports = mysql2.createPool({
           host: 'localhost',user: 'user',database: 'database',password: 'password',waitForConnections: true,connectionLimit: 10,queueLimit: 0
      });

在我的快速应用程序中(

 const app = express();

 app.set('mysql2',require('./mysql2'));

我将存储对mysql2.createPool函数的引用,还是我实际上将打开该池并将其传递给整个应用程序?

yousb002 回答:express set()是否存储引用或值

该行为不受set函数的影响,但是根据您在属性中传递的内容,在javascript标量对象中复制了对象,复杂对象通过引用传递。因此,这里的mysql2属性中存储着对对象的引用,而对象是函数调用mysql2.createPool的结果。

本文链接:https://www.f2er.com/3135129.html

大家都在问