国产探花免费观看_亚洲丰满少妇自慰呻吟_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異步請求和同步請求就是小編分享給大家的全部內容了,希望能給大家一個參考,也希望大家多多支持武林網。

發表評論 共有條評論
用戶名: 密碼:
驗證碼: 匿名發表
主站蜘蛛池模板: 永安市| 铜陵市| 兰溪市| 隆尧县| 祁门县| 黄骅市| 巨野县| 盐池县| 绥芬河市| 白水县| 城步| 根河市| 玉山县| 静海县| 维西| 介休市| 紫云| 临海市| 陕西省| 大新县| 西青区| 灵石县| 宿迁市| 宜宾市| 武乡县| 郧西县| 伊吾县| 绥德县| 波密县| 呼图壁县| 庄河市| 江源县| 顺平县| 高碑店市| 扎鲁特旗| 丰顺县| 忻城县| 晴隆县| 离岛区| 盈江县| 府谷县|