国产探花免费观看_亚洲丰满少妇自慰呻吟_97日韩有码在线_资源在线日韩欧美_一区二区精品毛片,辰东完美世界有声小说,欢乐颂第一季,yy玄幻小说排行榜完本

首頁 > 編程 > JavaScript > 正文

淺析$.getJSON異步請求和同步請求

2019-11-20 09:46:46
字體:
來源:轉載
供稿:網友

先說一下我遇到的問題吧,我之前的一個函數想調用上一個函數的返回值,但是它的返回值一直為空,后來翻了一些資料才明白是異步請求在作怪,不多說,看例子,這是我之前有返回值函數的代碼:

function get_no_order_array() {   var order_info = show_order();   var order = [];     $.getJSON("../JSON/customers.json", function (date) {      date["man"].forEach(function (person) {       if (order_info.k_obj[person] == undefined) {         order.push(person);       }     })   });    return order; } 

后來發現打印的數組order 一直為空,以下是改正后的代碼:

function get_no_order_array() {   var order_info = show_order();   var order = [];   $.ajaxSettings.async = false;//在執行之前加$.ajaxSettings.async = false;  (同步執行)   $.getJSON("../JSON/customers.json", function (date) { //<span style="line-height: 1.5;">$.getJSON不懂的話可以看一下我之前的博客,或是專門學習一下  “JSON”</span> 
date["man"].forEach(function (person) {       if (order_info.k_obj[person] == undefined) {         order.push(person);       }     })   });   $.ajaxSettings.async = true;//執行你的代碼之后及時恢復為$.ajaxSettings.async = true; (異步執行)   return order; } 

在循環之前加一個$.ajaxSettings.async = false;    表示同步執行,這樣他就會按照順序執行了。

同時執行多個$.getJSON() 數據混亂的問題的解決

在執行之前加$.ajaxSettings.async = false;    (同步執行)

執行你的代碼之后及時恢復為$.ajaxSettings.async = true; (異步執行)

不然影響別的地方的需要異步執行的代碼。

example:

$.ajaxSettings.async = false;$.getJSON(url, data, function(data){ });$.getJSON(url, data, function(data){ });$.getJSON(url, data, function(data){ });......$.ajaxSettings.async = true;

以上這篇淺析$.getJSON異步請求和同步請求就是小編分享給大家的全部內容了,希望能給大家一個參考,也希望大家多多支持武林網。

發表評論 共有條評論
用戶名: 密碼:
驗證碼: 匿名發表
主站蜘蛛池模板: 宁南县| 寿阳县| 晋中市| 乌兰浩特市| 夏河县| 泽库县| 九江市| 闻喜县| 南陵县| 射阳县| 泰宁县| 登封市| 遂平县| 随州市| 集贤县| 南开区| 久治县| 湛江市| 忻州市| 宁国市| 石楼县| 田阳县| 江口县| 新野县| 科尔| 平远县| 云浮市| 同德县| 汶川县| 镇远县| 荆门市| 新绛县| 突泉县| 特克斯县| 民乐县| 东方市| 东丽区| 高邑县| 通州区| 新乡市| 布拖县|