В чем разница между var express = require ('express');и var app = express () ;? - PullRequest
0 голосов
/ 24 сентября 2018
   'use strict';
    var express = require('express');
    var app = express();

Я бы подумал, что третья строка будет var app = express;так как он был объявлен как переменная (объект) выше.

Второй вопрос: откуда приходит функция express ()?Если он идет из экспресс-модуля, тогда третья строка должна быть

var app = express.express();

Может кто-нибудь это прояснить?Спасибо

1 Ответ

0 голосов
/ 24 сентября 2018

Я бы подумал, что третья строка будет var app = express;поскольку оно было объявлено как переменная (объект) выше.

require('express') возвращает фабричную функцию , которая при вызове возвращает экземпляр объектаExpress framework.

На самом деле вы можете иметь несколько express экземпляров, если хотите;

var express = require('express');
var server1 = express();
var server2 = express();

Не говоря, что вы должны, но можете.

Это точно такая же концепция, как это:

var dog = function(name) {
  return {
    name: name
  }
}

var jack = dog('jack');
var brad = dog('brad');
Добро пожаловать на сайт PullRequest, где вы можете задавать вопросы и получать ответы от других членов сообщества.
...