久久r热视频,国产午夜精品一区二区三区视频,亚洲精品自拍偷拍,欧美日韩精品二区

您的位置:首頁(yè)技術(shù)文章
文章詳情頁(yè)

javascript - 關(guān)于ajax異步加載請(qǐng)問(wèn)數(shù)據(jù)延遲問(wèn)題

瀏覽:152日期:2023-04-26 08:33:14

問(wèn)題描述

在外面定義一個(gè)空數(shù)組,然后做一個(gè)ajax請(qǐng)求,請(qǐng)求內(nèi)再嵌套一個(gè)請(qǐng)求,最終拼接成一個(gè)三個(gè)對(duì)象插入空數(shù)組。然后我在最外面打印數(shù)組長(zhǎng)度,打印出來(lái)的長(zhǎng)度是0,這個(gè)問(wèn)題會(huì)影響賦值。請(qǐng)問(wèn)怎么解決。javascript - 關(guān)于ajax異步加載請(qǐng)問(wèn)數(shù)據(jù)延遲問(wèn)題

問(wèn)題解答

回答1:

ajax異步會(huì)造成這樣的問(wèn)題。解決方案1.Promise 2.在ajax回調(diào)中進(jìn)行賦值

回答2:

javascript - 關(guān)于ajax異步加載請(qǐng)問(wèn)數(shù)據(jù)延遲問(wèn)題

ajax 是異步的,當(dāng)執(zhí)行到你的 log 代碼時(shí),ajax 還沒(méi)有返回呢。

回答3:

請(qǐng)查閱事件循環(huán)的問(wèn)題

我們知道ajax是異步操作,

你console.log 的位置 此時(shí)arr.length 其實(shí)就是[].length

當(dāng)你當(dāng)前的js執(zhí)行完后,ajax的success回調(diào)才會(huì)執(zhí)行,只有success回調(diào)成功后此時(shí)你的arr數(shù)組被push進(jìn)值

所以你可能要把console.log放入第二個(gè)ajax的success回調(diào)里至于promise會(huì)很好的優(yōu)化這種嵌套的回調(diào),但是你要封裝你的ajax

建議把你所有的ajax 包裝成promise

回答4:

ajax是數(shù)據(jù)獲取方式是異步的,所以異步獲取的數(shù)據(jù)并不能按照平時(shí)理解的同步方式去處理,應(yīng)該把你的console.log 寫(xiě)在 success 的 回調(diào)函數(shù)里。

回答5:

將你的async:false,這樣你就可以在外面獲取到里面的值了。

回答6:

這樣的話(huà),你得改成ajax同步。異步的話(huà),ajax和它后面的代碼同時(shí)執(zhí)行

標(biāo)簽: JavaScript
相關(guān)文章:
主站蜘蛛池模板: 县级市| 武义县| 定西市| 隆子县| 南靖县| 江西省| 万荣县| 林甸县| 岑巩县| 南昌县| 松潘县| 额济纳旗| 延边| 望城县| 庄浪县| 余干县| 宕昌县| 临猗县| 南澳县| 东台市| 武穴市| 鲁甸县| 故城县| 莱阳市| 罗源县| 耒阳市| 京山县| 石渠县| 德格县| 永德县| 莱西市| 余姚市| 宁武县| 宝鸡市| 巫溪县| 汉寿县| 开鲁县| 芒康县| 巴彦淖尔市| 西丰县| 乐业县|