我对快递中的两行源代码感到困惑

YiQi

./lib/express.js

function createApplication() {
    var app = function(req, res, next) {
        app.handle(req, res, next);
    };

    mixin(app, proto);
    mixin(app, EventEmitter.prototype);

    app.request = { __proto__: req, app: app };
    app.response = { __proto__: res, app: app };
    app.init();
    return app;
}

我知道它将创建一个快速应用程序并将其返回给我们,我们收到的应用程序是一个将在HTTP“请求”事件发生时触发的函数,但是这两行代码的目的是什么

app.request = { __proto__: req, app: app };
app.response = { __proto__: res, app: app };

Bodokaiser

它的基本捷径是:

app.request = new req();
app.request.app = app;

__proto__属性设置对象prototypeAprototype定义对象继承哪些方法。例如,Array.prototype.slice将在提供[1,2,3].slice(1)关于原型的特殊之处在于,原型的每个实例共享相同的方法。因此,不会重新创建原型方法,从而节省了性能。

是,并app仅仅是一个参考,因此对方法request对象可以例如访问app.settings通过this.app.settings

本文收集自互联网,转载请注明来源。

如有侵权,请联系[email protected] 删除。

编辑于
0

我来说两句

0条评论
登录后参与评论

相关文章

来自分类Dev

在vim中折叠代码使我感到困惑

来自分类Dev

在vim中折叠代码使我感到困惑

来自分类Dev

我对在代码优先迁移中创建一对多关系的两种方法感到困惑。选择哪一个?

来自分类Dev

我对javascript中的if语句感到困惑

来自分类Dev

我对 java 中的返回方法感到困惑

来自分类Dev

我对 Sequelize 中的关联感到困惑

来自分类Dev

为什么我感到困惑“当命令在BASH中失败时,退出状态代码为0”

来自分类Dev

在我的代码中通过引用调用和通过值调用之间感到困惑

来自分类Dev

这两行代码在程序中的工作

来自分类Dev

输出| ...使我感到困惑

来自分类Dev

叉子让我感到困惑

来自分类Dev

QT让我感到困惑

来自分类Dev

对我在求职面试中看到的C代码感到困惑

来自分类Dev

我在求职面试中看到的这个C代码感到困惑

来自分类Dev

我想在SQL Server 2008中合并两行

来自分类Dev

超级简单的JQuery问题让我感到困惑。代码不会在<head>中触发,但会在<body>中触发

来自分类Dev

在C ++结构声明中对代码的目的/含义感到困惑

来自分类Dev

我对行高和边距感到困惑

来自分类Dev

在两行之间查找代码

来自分类Dev

DOM querySelector 两行代码的区别

来自分类Dev

编译器错误使我在ActionScript中感到困惑

来自分类Dev

我对Java中的类和对象的概念感到困惑

来自分类Dev

我对在C ++中对'<<'使用运算符重载感到困惑

来自分类Dev

子进程中的命名信号量使我感到困惑

来自分类Dev

我对C#中的可选匿名函数感到困惑

来自分类Dev

提交事务时,我在hibernate和mysql中感到困惑

来自分类Dev

我对盐堆中的jinja2感到困惑

来自分类Dev

我对bash中双引号的用法感到困惑

来自分类Dev

在 D3.js 中,我对 exit() 的行为感到困惑

Related 相关文章

  1. 1

    在vim中折叠代码使我感到困惑

  2. 2

    在vim中折叠代码使我感到困惑

  3. 3

    我对在代码优先迁移中创建一对多关系的两种方法感到困惑。选择哪一个?

  4. 4

    我对javascript中的if语句感到困惑

  5. 5

    我对 java 中的返回方法感到困惑

  6. 6

    我对 Sequelize 中的关联感到困惑

  7. 7

    为什么我感到困惑“当命令在BASH中失败时,退出状态代码为0”

  8. 8

    在我的代码中通过引用调用和通过值调用之间感到困惑

  9. 9

    这两行代码在程序中的工作

  10. 10

    输出| ...使我感到困惑

  11. 11

    叉子让我感到困惑

  12. 12

    QT让我感到困惑

  13. 13

    对我在求职面试中看到的C代码感到困惑

  14. 14

    我在求职面试中看到的这个C代码感到困惑

  15. 15

    我想在SQL Server 2008中合并两行

  16. 16

    超级简单的JQuery问题让我感到困惑。代码不会在<head>中触发,但会在<body>中触发

  17. 17

    在C ++结构声明中对代码的目的/含义感到困惑

  18. 18

    我对行高和边距感到困惑

  19. 19

    在两行之间查找代码

  20. 20

    DOM querySelector 两行代码的区别

  21. 21

    编译器错误使我在ActionScript中感到困惑

  22. 22

    我对Java中的类和对象的概念感到困惑

  23. 23

    我对在C ++中对'<<'使用运算符重载感到困惑

  24. 24

    子进程中的命名信号量使我感到困惑

  25. 25

    我对C#中的可选匿名函数感到困惑

  26. 26

    提交事务时,我在hibernate和mysql中感到困惑

  27. 27

    我对盐堆中的jinja2感到困惑

  28. 28

    我对bash中双引号的用法感到困惑

  29. 29

    在 D3.js 中,我对 exit() 的行为感到困惑

热门标签

归档