亚洲在线久爱草,狠狠天天香蕉网,天天搞日日干久草,伊人亚洲日本欧美

為了賬號安全,請及時綁定郵箱和手機立即綁定
已解決430363個問題,去搜搜看,總會有你想問的

回調函數求個簡單的例子

回調函數求個簡單的例子

啊啊啊啊123 2017-05-31 19:24:25
兩個函數f1和f2,后者等待前者的執行結果。為什么不是f1任務代碼在定時器外,讓callback等1秒執行?求個簡單的例子
查看完整描述

1 回答

?
李曉健

TA貢獻1036條經驗 獲得超461個贊

你上面就是一個例子呀,那他個定時只是一個例子,在我們常用的環境中有很多操作都是異步的,比喻定時器,網絡請求等等,就用網絡請求來說,你的f1就是去請求的方法,f2是請求回來后的操作。如果把f1執行一下就立即執行f2,因為請求是異步的,所以f1的請求一發出去,f2就會開始執行,他是不管你f1是不是請求已經回來了。如果f1是去請求用戶信息,f2是把用戶信息顯示到頁面。就可能出現還沒有f1還沒有拿到信息,f2就開始去處理顯示,自然就顯示不出來。如果f2作為f1的回調,f1就可以控制f2的執行時機。f1就可以等請求回來以后再讓f2執行,就不會有問題了。

查看完整回答
反對 回復 2017-06-01
  • 啊啊啊啊123
    啊啊啊啊123
    圖上的f1任務代碼和callback函數不是都在定時器內嗎?這里不明白,不還是同步執行嗎
  • 李曉健
    李曉健
    了解你的意思了,你是說那個注釋寫的任務代碼呀,是的沒錯,是任務代碼執行完了就立即執行f2。他這里的意思是整個f1里的所有代碼都不阻礙f1后面的代碼執行,包括任務代碼
  • 啊啊啊啊123
    啊啊啊啊123
    function f1(callback) { var x = 0; setTimeout(function(){ x++; },1000); callback(x) } function f2(x) { alert(x); } 請問用回調函數的方式如何讓f1(f2)彈出1?
點擊展開后面3
  • 1 回答
  • 0 關注
  • 2083 瀏覽
慕課專欄
更多

添加回答

舉報

0/150
提交
取消
微信客服

購課補貼
聯系客服咨詢優惠詳情

幫助反饋 APP下載

慕課網APP
您的移動學習伙伴

公眾號

掃描二維碼
關注慕課網微信公眾號