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

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

怎么讓js函數 一個執行完之后在執行另外一個?

怎么讓js函數 一個執行完之后在執行另外一個?

人到中年有點甜 2019-03-05 09:07:23
function start_flow(){start_project();start_config();...}function start_project(){...}function start_config(){ ...} 函數中有ajax異步請求 所以 沒有辦法使得前一個函數執行完后 后一個在執行 現在的問題是start_project()還沒有執行完成就開始執行start_config()了,這樣會出錯,想達到的效果是start_project()執行完成再start_config(),請問要如何做? 有兩個可行的方法 一 為 settimeout 創立時間差(肯定可行) 二為 確定一個返回值 true 判斷返回值 是否執行成功(這個沒有試驗過 感覺可能不太可行) 我想請問的是 有沒有效率高一點的 更好的方法?
查看完整描述

3 回答

?
牧羊人nacy

TA貢獻1862條經驗 獲得超7個贊

1、直接在 start_project 函數中執行start_config 

1234567891011121314151617function start_flow(){    start_project();    //start_config();    ...}  function start_project(){    ...    start_config();// 在這里執行}  function start_config()    ...}

2、或者做成callback函數

123456789101112131415161718function start_flow(){    start_project( start_config );    //start_config();    ...}  function start_project( callback ){    ...    if(typeof callback != "undefined")        callback();// 執行調用函數}  function start_config()    ...}



查看完整回答
反對 回復 2019-03-27
?
茅侃侃

TA貢獻1842條經驗 獲得超22個贊

start_project 添加一個參數,
start_project(fn){
………………
fn()

}
function start_flow()
{
start_project(start_config);
……
}


查看完整回答
反對 回復 2019-03-27
  • 3 回答
  • 0 關注
  • 2406 瀏覽

添加回答

舉報

0/150
提交
取消
微信客服

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

幫助反饋 APP下載

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

公眾號

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