gpt4 book ai didi

javascript - var express = 需要 ('express' ); var app = express(), 什么是 express()??它是方法还是构造函数?它从何而来

转载 作者:IT老高 更新时间:2023-10-28 22:04:08 27 4
gpt4 key购买 nike

var express = require('express'); 
var app = express();

这就是我们创建快速应用程序的方式。但是这个'express()'是什么?它是方法还是构造函数?哪里来的??

最佳答案

Is it a method or a constructor?

都不是;这是一个函数,虽然如果你说的是“方法”,我认为没有人会为难你。

方法是附加到对象的函数。在 JavaScript 中,方法只是主要是您通过对象属性引用的函数。 (更新:从 ES2015 开始,如果您使用方法语法来创建它们,那么它们将更多,因为它们可以访问 super。) em>

constructor,在 JavaScript 中,是您通过 new 运算符调用的函数。尽管其他函数可能会创建东西,但我们通常不会将它们称为“构造函数”以避免混淆。有时它们可​​能是“创建者”或“构建者”函数。

Where does it come from?

ExpressJS 是 NodeJS module ; express 是模块的名称,也是我们通常赋予变量的名称,我们用于在代码中引用其主要功能,例如您引用的内容。 NodeJS 提供了 require function ,其工作是加载模块并让您访问它们的导出。 (你没有调用变量express,你可以做var foo = require('express');并使用foo 代替,但约定是您将使用模块的名称,或者如果仅使用模块的一部分,则使用模块文档定义的该部分的名称。)

express 的默认导出有点不寻常,因为它是一个函数,它的属性也是函数(方法)。这在 JavaScript 中是完全有效的¹,但在其他一些语言中却相当不寻常。这就是为什么您可以通过 express() 创建一个 Application 对象,但也可以使用 express.static(/*...*/) 来设置服务静态文件。


¹事实上,这是完全正常的。默认情况下,函数有几个标准方法:例如 callapplytoString

关于javascript - var express = 需要 ('express' ); var app = express(), 什么是 express()??它是方法还是构造函数?它从何而来,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/27599614/

27 4 0
Copyright 2021 - 2024 cfsdn All Rights Reserved 蜀ICP备2022000587号
广告合作:1813099741@qq.com 6ren.com