首页
学习
活动
专区
圈层
工具
发布
社区首页 >问答首页 >在ajax中的函数外部使用变量

问在ajax中的函数外部使用变量
EN

Stack Overflow用户
提问于 2015-07-24 00:03:56
回答 1查看 234关注 0票数 2

如何在函数外部使用函数中的变量。console.log(response)显示内容是从php获取的。警报(Lng)显示为undefined。为什么?这个脚本有什么问题,我已经写了一段时间了。

下面是脚本。

代码语言:javascript
复制
    var lat;
    var lng ;
    $.ajax({
            type: 'GET',
            url: 'getlocation.php',
            data: 'param=no' ,
            dataType: 'JSON',
            success: function (response) {
                console.log(response);
                lat = response.latitude;
                lng = response.latitude;
            },
            error: function (response){
                alert (response);
            }

        });
    alert( lng);
EN

回答 1

Stack Overflow用户

发布于 2015-07-24 00:06:04

因为当代码运行到alert(lng)行时,没有设置变量lng。

Ajax调用是异步的。这意味着,JS引擎进入了流程:

  1. 发出http请求($.ajax...)

(此时,由于网络运行较慢,因此JS引擎选择继续执行以下行。它在响应完成后返回。)

  1. 运行到alert(lng)行。此时,仍然是undefined.
  2. The请求响应成功/错误,然后运行相应的回调函数function(response)...。回调函数中的警报会得到你想要的。
票数 3
EN
页面原文内容由Stack Overflow提供。腾讯云小微IT领域专用引擎提供翻译支持
原文链接:

https://stackoverflow.com/questions/31592590

复制
相关文章

相似问题

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