jQuery getJSON将结果保存到变量中

时间:2013-04-02 13:03:49

标签: javascript jquery json

我使用getJSON从我的网站请求JSON。它工作得很好,但我需要将输出保存到另一个变量中,如下所示:

var myjson= $.getJSON("http://127.0.0.1:8080/horizon-update", function(json) {

                 });

我需要将结果保存到myjson,但似乎这种语法不正确。有什么想法吗?

2 个答案:

答案 0 :(得分:65)

只有在回复之后,才能在调用getJSON时获得价值。

var myjson;
$.getJSON("http://127.0.0.1:8080/horizon-update", function(json){
    myjson = json;
});

答案 1 :(得分:22)

$。getJSon期望回调函数将其传递给回调函数,或者在回调函数中将其分配给全局变量。

var globalJsonVar;

    $.getJSON("http://127.0.0.1:8080/horizon-update", function(json){
               //do some thing with json  or assign global variable to incoming json. 
                globalJsonVar=json;
          });

IMO最好是调用回调函数。这对眼睛,可读性方面更好。

$.getJSON("http://127.0.0.1:8080/horizon-update", callbackFuncWithData);

function callbackFuncWithData(data)
{
 // do some thing with data 
}