javascript中的全局变量不';不改变

javascript中的全局变量不';不改变,javascript,jquery,variables,global-variables,Javascript,Jquery,Variables,Global Variables,第一条消息是“你好” 第二个消息是“”为什么?$。ajax是一个异步函数,它会立即返回,并在收到成功响应时调用成功回调 因此,当执行代码底部的警报($check)时,$check的值还没有被ajax的回调修改。这就是为什么会看到空字符串。jquery ajax函数默认为异步。因此,executedosent将等待函数值返回。所以可能是因为您正在本地开发服务器上工作。ajax post请求速度很快,您在回复post请求时返回单词hello,因此第一条警报消息是“hello” 然后继续执行,并再次返

第一条消息是“你好”


第二个消息是“”为什么?

$。ajax
是一个异步函数,它会立即返回,并在收到成功响应时调用
成功
回调


因此,当执行代码底部的
警报($check)
时,
$check
的值还没有被
ajax
的回调修改。这就是为什么会看到空字符串。

jquery ajax函数默认为异步。因此,executedosent将等待函数值返回。所以可能是因为您正在本地开发服务器上工作。ajax post请求速度很快,您在回复post请求时返回单词hello,因此第一条警报消息是“hello”

然后继续执行,并再次返回有关
$chek
本地值的警报

当您说“first”和“second”时,您指的是时间序列还是代码行序列?这有很大的不同。在上面的代码中,按照时间顺序,第一条消息应该是空的,之后当ajax调用返回时,第二条消息应该是“Hello”。此代码执行一次。
    $check = "";

    $.ajax({
        url: "check.php",
        type: "POST",
        cache: false,
        data: $name + "=" + $value,
        success: function(data){
            $check = data;
            alert($check);
        }
    });

    alert($check);