为什么javascript关心这个变量是否是本地变量?

时间:2013-11-07 19:39:24

标签: javascript jquery html http scope

使用jquery进行以下调用:

var x = $.get("/page");

页面发回一些我想通过x.responseJSON访问的json数据。如果变量是本地的,则示例x未定义。如果我删除当地的偏差,那很好。这不是范围问题,因为它都发生在同一范围内。我只注意到这种行为,即使在开发人员控制台中进行调用,也会自动将返回的对象打印到控制台。

2 个答案:

答案 0 :(得分:1)

未定义,因为您没有告诉控制台返回任何内容。如果不包含var x =,控制台将显示该对象。

在控制台中输入以下内容:

var x = "123";

而不是输入

x;

enter image description here

答案 1 :(得分:0)

ajax请求是一个异步任务,因此您需要在成功回调中处理响应:

$.get('/page', function(x) {
    console.log(x,'marks the spot');
});