我正在用 NodeJS 构建一个 ExpressJS 应用程序。我的问题是如果我这样做会有任何性能差异

app.get('/test', function(req, res) {
    fn(function(err, data) {
        if (err) {
            return res.json(400, {
                error: 1,
                msg: "some error"
            });
        }

        ///more code
    });
});

代替
app.get('/test', function(req, res) {
    fn(function(err, data) {
        if (err) {
            res.json(400, {
                error: 1,
                msg: "some error"
            });
            return;
        }

        ///more code
    });
});

返回 res 变量会使服务器上的任何额外负载。两个代码都有效,只是第一个对我来说看起来更好,我保存了 1 行。

最佳答案

相反,我认为很多人会告诉你这种习语是一种非常合理的做法,因为它让读者(通常是你 future 的自己)清楚你正在退出)。在这种特殊情况下,该策略的优点在于您可以节省更多代码,因为现在您的条件分支中只有一个语句,这意味着您可能会丢失一些大括号。

app.get('/test', function(req, res) {
    fn(function(err, data) {
        if (err)  return res.json(400, {
                    error: 1,
                    msg: "some error"
                 });
    ///more code
    });
});

但是你问是否有性能差异。如果有,我想这几乎是难以察觉的。

关于node.js - NodeJS,返回 res.json 是一种不好的做法吗,我们在Stack Overflow上找到一个类似的问题:https://stackoverflow.com/questions/22902099/

10-16 17:41