Javascript jQuery。将JSON作为结果分配给变量

Javascript jQuery。将JSON作为结果分配给变量,javascript,ajax,jquery,Javascript,Ajax,Jquery,我使用此helper函数接收请求的JSON结果: function getData(url) { $.get(url, function(data) { response = data; return response; }, 'application/json'); } 我给它一些字符串作为web应用程序url的一部分,比如“/api/getusers”,所以它看起来像getData(“/api/

我使用此helper函数接收请求的JSON结果:

function getData(url) {
    $.get(url,
         function(data) {
             response = data;
             return response;
         }, 'application/json');
}

我给它一些字符串作为web应用程序url的一部分,比如“/api/getusers”,所以它看起来像
getData(“/api/getusers”)
。现在,我需要将包含从url接收的JSON数据的字符串结果分配给我的变量,因此它看起来是这样的:
var result=getData('/api/getusers')
。然后我将处理这个JSON数据。问题在于返回响应变量。没有定义。谢谢

这是一个异步操作,意味着当服务器的响应可用时,
function(data){…}
会在您从
getData()
返回很久之后运行。相反,从该函数中启动您需要的任何内容,例如:

function getData(url, callback) {
    $.get(url, callback, 'application/json');
}
然后在调用时,传入一个函数或对使用响应的函数的引用,如下所示:

getData("myPage.php", function(data) {
  alert("The data returned was: " + data);
});
使用$.ajax

$.ajax({
    url: 'http://www.example.com',
    dataType: 'json',
    success: function(data){
       alert(data.Id);
    }
});
试试这个

function getData(url) { var data; $.ajax({ async: false, //thats the trick url: 'http://www.example.com', dataType: 'json', success: function(response){ data = response; } }); return data; } 函数getData(url){ var数据; $.ajax({ async:false,//这就是诀窍 网址:'http://www.example.com', 数据类型:“json”, 成功:功能(响应){ 数据=响应; } }); 返回数据; }