首页
学习
活动
专区
圈层
工具
发布
首页
学习
活动
专区
圈层
工具
MCP广场
社区首页 >问答首页 >从Javascript函数调用返回值

从Javascript函数调用返回值
EN

Stack Overflow用户
提问于 2013-10-30 00:31:34
回答 3查看 88关注 0票数 0

这真的是一个关于Javascript范围和函数的问题,所以我道歉,因为我是JS的新手!!

我有一段javascript,连接创建了一个从Vertx到REST服务的HTTPClient连接-这一切都工作得很好,这里没有问题。

我的问题是,我需要访问从这个调用外部的"client.request“返回的"status”和“data

代码语言:javascript
运行
复制
// Create the HTTP Client
var client = vertx.createHttpClient().host(host).port(ssl_port).ssl(true);


var request = client.request("POST", "/api/en/v1.0/authentication/token/new" + "?login_id=" + login_id + "&api_key=" + api_key, function(resp) {

    //console.log("Got a response: " + resp.statusCode());
    resp.bodyHandler(function(body) {
        // Parse the JSON string into a new object.
        var response = JSON.parse(body);
        console.log("status : " + response.status);
        console.log("data : " + response.data);
    })
});


request.end();

所以在下面的代码中,我想使用/access "status“和"data”。在另一种语言中,我只是将它们作为对象返回到调用堆栈中。

EN

回答 3

Stack Overflow用户

发布于 2013-10-30 00:35:09

将它们存储在of函数外部的变量中,您就可以访问它。如果您需要知道信息何时可用,请定义一个回调函数或查看javascript自定义事件。

票数 1
EN

Stack Overflow用户

发布于 2013-10-30 00:40:14

你也可以在javascript中做同样的事情。请参阅此document

您可以创建一个类:

代码语言:javascript
运行
复制
function httpResponse(status,data) {
this.status=status;
this.data=data;
}

设置如下值:

代码语言:javascript
运行
复制
var myStatus = new httpResponse(response.status, response.data);

添加返回语句:

代码语言:javascript
运行
复制
return myStatus;

在您的调用代码中,您可以通过以下方式访问此数据:

代码语言:javascript
运行
复制
var status = myStatus.status;
票数 1
EN

Stack Overflow用户

发布于 2013-10-30 00:36:28

在函数外部定义全局变量。

代码语言:javascript
运行
复制
var myVariable1_status;
var myVariable1_data;

然后将状态和数据值赋给函数内部的变量。

代码语言:javascript
运行
复制
function(){
    myVariable1_status = status;
    myVariable1_data = data;
}
票数 -1
EN
页面原文内容由Stack Overflow提供。腾讯云小微IT领域专用引擎提供翻译支持
原文链接:

https://stackoverflow.com/questions/19664032

复制
相关文章

相似问题

领券
问题归档专栏文章快讯文章归档关键词归档开发者手册归档开发者手册 Section 归档