jquery getJSON方法返回值

jquery getJSON方法返回值,第1张

jquery 的getJson也是ajax请求,ajax请求默认是异步请求,就是不需要等数据返回,就会执行后面的数据。

所以,你外面的变量赋值,还没有等请求值返回,就已经执行了。

你只需要在getJSON请求之前,设置同步请求就行了:$.ajaxSettings.async = false

这段代码是有个误区的 完全可以这么做

出现问题的原因是因为 getJSON方法是异步的 也就是说 它并不会卡主后面的 *** 作

因为Ajax请求是有一定消耗时间的所以运行顺序应该是

1 定义了数组

2 执行getJSON

3 最后一行的consoleLog

4 Ajax请求返回 busStopData赋值 然后再consoleLog

避免的方法有很多

你可以在回调的时候 再触发另一个方法来执行你想做的 *** 作

也可以在后面写一个等待逻辑 判断是否正常返回了(或者异常返回了) 等待到了数据再使用

或者使用$.ajax 设置同步属性为同步执行(好好看看ajax可以设置的属性)也可以


欢迎分享,转载请注明来源:内存溢出

原文地址: http://outofmemory.cn/tougao/11260964.html

(0)
打赏 微信扫一扫 微信扫一扫 支付宝扫一扫 支付宝扫一扫
上一篇 2023-05-14
下一篇 2023-05-14

发表评论

登录后才能评论

评论列表(0条)

保存