Warning: file_get_contents(/data/phpspider/zhask/data//catemap/9/javascript/391.json): failed to open stream: No such file or directory in /data/phpspider/zhask/libs/function.php on line 167

Warning: Invalid argument supplied for foreach() in /data/phpspider/zhask/libs/tag.function.php on line 1116

Notice: Undefined index: in /data/phpspider/zhask/libs/function.php on line 180

Warning: array_chunk() expects parameter 1 to be array, null given in /data/phpspider/zhask/libs/function.php on line 181
Javascript jqueryajax赢得';t将数据存储在变量中_Javascript_Jquery_Ajax_Global Variables - Fatal编程技术网

Javascript jqueryajax赢得';t将数据存储在变量中

Javascript jqueryajax赢得';t将数据存储在变量中,javascript,jquery,ajax,global-variables,Javascript,Jquery,Ajax,Global Variables,以下代码: jQuery.extend({ getAnalytics: function() { var result = null; $.ajax({ type: 'POST', dataType: 'json', url: '/master/analytics/reports', success: function(data) {

以下代码:

jQuery.extend({
    getAnalytics: function() {
        var result = null;
        $.ajax({
            type: 'POST',
            dataType: 'json',
            url: '/master/analytics/reports',
            success: function(data) {
                result = data;
                console.log(result);
            }
        });
        console.log(result);
        return result;
    }
});

var results = $.getAnalytics();
console.log(results);
在控制台中显示:

{20181002: 0, 20181003: 0, 20181004: "2", 20181005: "9", 20181006: 0, 20181007: 0, 20181008: "2", 20181009: "3", 20181010: "1"}
null
null

我无法找出我在请求中做错了什么,让
result
results
返回空值,即使success的
result
内部有一个json字符串。我不理解这里的变量。

我不尊重AJAX调用的异步性质。它是以名字命名的

我通过以下操作修复了它

success: function(data) {
            result = data;
            functionToPerform();
        }

function functionToPerform() {
    // code that depends on the data sent back from the Ajax request
    // fire this only after a successful AJAX request
}

这与JavaScript的同步特性有很大关系。我建议你看看:非常感谢。这就是我所需要的。