Javascript 如何在Node.js中使用res.send()

Javascript 如何在Node.js中使用res.send(),javascript,node.js,express,get,mongoose,Javascript,Node.js,Express,Get,Mongoose,我正在Node.js/Express应用程序中使用mongoose api。我在客户端有一个get请求,请求一些数据,但由于某些原因,这些数据从未到达客户端。怎么了 后端代码片段 app.get('/up', isLoggedIn, function(req,res){ req.user.local.level = 2; req.user.save(function(err){ res.send(req.user.local.level); }); })

我正在Node.js/Express应用程序中使用mongoose api。我在客户端有一个get请求,请求一些数据,但由于某些原因,这些数据从未到达客户端。怎么了

后端代码片段

app.get('/up', isLoggedIn, function(req,res){
    req.user.local.level = 2;
    req.user.save(function(err){
        res.send(req.user.local.level);
    });

});
function try(){
    var ks=1;
    if(true){
            $.get('/up', function(data){
                ks=data;    
            });
        }
        console.log(ks);
    }
前端片段

app.get('/up', isLoggedIn, function(req,res){
    req.user.local.level = 2;
    req.user.save(function(err){
        res.send(req.user.local.level);
    });

});
function try(){
    var ks=1;
    if(true){
            $.get('/up', function(data){
                ks=data;    
            });
        }
        console.log(ks);
    }
服务器控制台显示2,而浏览器控制台仍显示1,有什么问题

编辑
我接受了你的建议,但还是不行。我做错了什么

var ks=1;
if(true){
    jQuery.ajax({
         url:    '/up' ,
         async:   false,
         success: function(data) {
                    ks = data;
                    console.log(ks);
                  }

    });
    }

在响应到达之前,该代码在您发送请求时立即运行。

您的问题在客户端。欢迎来到异步的精彩世界!你不能那样做。你能再解释一下吗?我想看看错误在哪里。@idude代码的执行顺序与编写的顺序不同。
$.get()
异步执行,或“在自己的时间内”独立于
控制台.log(ks)执行。有关更详细的解释,请参阅,您是否建议我在回调函数中使用console.log(数据)?@idude:Yes;您不能在响应到达之前使用它。如果您需要返回它,请使用承诺。我在回调函数中键入的任何内容似乎都会被忽略