在jQuery/javascript中定义一个全局变量
在JavaScript/jQuery中定义一个全局变量,然后在脚本中获取它 但奇怪的是,它不起作用 在控制台中打印getResult,导致未定义 但当尝试在分配给它的值之后打印getResult时,它会给我准确的值 实际上,我需要在底部显示ajax结果。。我该怎么做 JavaScript是同步的。AJAX是异步的 因此,console.loggetResult;底部是在执行以下AJAX之前触发的:在jQuery/javascript中定义一个全局变量,javascript,jquery,Javascript,Jquery,在JavaScript/jQuery中定义一个全局变量,然后在脚本中获取它 但奇怪的是,它不起作用 在控制台中打印getResult,导致未定义 但当尝试在分配给它的值之后打印getResult时,它会给我准确的值 实际上,我需要在底部显示ajax结果。。我该怎么做 JavaScript是同步的。AJAX是异步的 因此,console.loggetResult;底部是在执行以下AJAX之前触发的: success: function (result, status) { getResul
success: function (result, status) {
getResult = result;
console.log(getResult); // getResult is working here
}
您可以给getResult一个默认值,然后自己测试它。这是因为在AJAX调用完成之前,getResult没有定义,只是声明了它
由于AJAX是异步的,您的第一个控制台日志如下所示:
var getResult;
console.log(getResult);
你能在这里给我getResult的值吗?不,因为它是未定义的,实际上它的值是未定义的,shhh在第二个AJAX调用中,您没有分配getResult=result2;导致未定义的值
另外,将全局var=getResult;在getJSON函数中。ok fine。我明白我在做什么。。我需要底部的ajax结果。。我该怎么做呢?你可以用一个函数来处理你的值:好的。我明白我在做什么。。我需要底部的ajax结果。。我怎么能做到这一点呢?你说我需要底部的ajax结果到底是什么意思?您希望在第二个AJAX成功函数中使用它吗?在两个AJAX调用都完成后,您是否正在尝试执行某些操作?什么?实际上我想将ajax结果存储在变量中,然后用于其他目的。。我们可以说,我希望使用这些ajax结果通过underline.jsOk传递给模板,正如我所说的。JavaScript是同步的,因此您不能仅仅假设异步AJAX在到达底部时已经返回。因此,通常,您需要做的是从AJAX成功函数内部调用函数,该函数将使用您设置的全局变量。
var getResult;
console.log(getResult);