<ruby id="bdb3f"></ruby>

    <p id="bdb3f"><cite id="bdb3f"></cite></p>

      <p id="bdb3f"><cite id="bdb3f"><th id="bdb3f"></th></cite></p><p id="bdb3f"></p>
        <p id="bdb3f"><cite id="bdb3f"></cite></p>

          <pre id="bdb3f"></pre>
          <pre id="bdb3f"><del id="bdb3f"><thead id="bdb3f"></thead></del></pre>

          <ruby id="bdb3f"><mark id="bdb3f"></mark></ruby><ruby id="bdb3f"></ruby>
          <pre id="bdb3f"><pre id="bdb3f"><mark id="bdb3f"></mark></pre></pre><output id="bdb3f"></output><p id="bdb3f"></p><p id="bdb3f"></p>

          <pre id="bdb3f"><del id="bdb3f"><progress id="bdb3f"></progress></del></pre>

                <ruby id="bdb3f"></ruby>

                ??一站式輕松地調用各大LLM模型接口,支持GPT4、智譜、豆包、星火、月之暗面及文生圖、文生視頻 廣告
                [TOC] ## **什么是回調地獄** > 就是在一個回調函數里面嵌套一個回調函數,甚至嵌套更多個回調函數 [什么是回調函數](http://www.hmoore.net/juan1996/interview/905078) ### **回調地獄的實例** ``` <body> <input /> <button>搜索一下</button> <h1></h1> <img src="" alt=""> <p></p> <script> var baseUrl = 'http://api.douban.com/v2/movie/' $("button").click(function () { var value = $("input").val(); $.ajax({ url: `${baseUrl}search?q=${value}&count=1`, dataType: "jsonp", success:res=>{ var title = res.title; var imgUrl = res.subjects[0].images.small; var id = res.subjects[0].id; $("h1").html(title); $("img").attr("src",imgUrl) $.ajax({ url:`${baseUrl}${id}`, dataType: "jsonp", success:res=>{ var summary = res.summary; $("p").html(summary) } }) } }) }) </script> </body> ``` ## **用回調函數封裝回調地獄** ``` <body> <input /> <button>搜索一下</button> <h1></h1> <img src="" alt=""> <p></p> <script> var baseUrl = 'http://api.douban.com/v2/movie/' function http({ url, success }){ $.ajax({ url:baseUrl+url, dataType:"jsonp", success:res=>{ success(res) } }) } $("button").click(function(){ var value = $("input").val(); http({ url:`search?q=${value}&count=1`, success:res=>{ var title = res.title; var imgUrl = res.subjects[0].images.small; var id = res.subjects[0].id; $("h1").html(title); $("img").attr("src",imgUrl) http({ url:id, success:res=>{ var summary = res.summary; $("p").html(summary) } }) } }) }) </script> </body> ``` ## **promise解決回調地獄** ``` <body> <input /> <button>搜索一下</button> <h1></h1> <img src="" alt=""> <p></p> <script> var baseUrl = 'http://api.douban.com/v2/movie/' function http(url) { /*暫停,凝固*/ return new Promise((resolve, reject) => { $.ajax({ url:baseUrl+url, dataType: "jsonp", success: res => { resolve(res) }, error: err => { reject(err); } }) }) } $("button").click(function () { var value = $("input").val(); http(`search?q=${value}&count=1`).then(res => { var id = res.subjects[0].id; $("img").attr("src", res.subjects[0].images.small); $("h1").html(res.title); return http(id) }).then(res => { var summary = res.summary; $("p").html(summary) }) }) </script> </body> ``` ## 用generator解決回調地獄 `<script src="https://cdn.bootcss.com/jquery/3.3.1/jquery.js"></script>` ``` <body> <input /> <button>搜索一下</button> <h1></h1> <img src="" alt=""> <p></p> <script> var baseUrl = 'http://api.douban.com/v2/movie/'; function *getData(){ var id = yield $.ajax({ url:baseUrl+"search?q=你的名字&count=1", dataType:"jsonp" }) yield $.ajax({ url:baseUrl+id, dataType:"jsonp" }) } var gen = getData(); var movie = gen.next(); movie.value.then(res=>{ var id = res.subjects[0].id; var detail = gen.next(id); detail.value.then(res=>{ console.log(res) }) }) </script> </body> ``` ## 用async解決回調地獄 `<script src="https://cdn.bootcss.com/jquery/3.3.1/jquery.js"></script>` ``` <body> <script> var baseUrl = 'http://api.douban.com/v2/movie/'; async function http({ url }){ return $.ajax({ url:baseUrl+url, dataType:"jsonp" }) } async function getData(){ var data = await http({url:"search?q=你的名字&count=1"}); var id = data.subjects[0].id; var detail = await http({url:id}); console.log(data); console.log(detail); } getData() </script> </body> ```
                  <ruby id="bdb3f"></ruby>

                  <p id="bdb3f"><cite id="bdb3f"></cite></p>

                    <p id="bdb3f"><cite id="bdb3f"><th id="bdb3f"></th></cite></p><p id="bdb3f"></p>
                      <p id="bdb3f"><cite id="bdb3f"></cite></p>

                        <pre id="bdb3f"></pre>
                        <pre id="bdb3f"><del id="bdb3f"><thead id="bdb3f"></thead></del></pre>

                        <ruby id="bdb3f"><mark id="bdb3f"></mark></ruby><ruby id="bdb3f"></ruby>
                        <pre id="bdb3f"><pre id="bdb3f"><mark id="bdb3f"></mark></pre></pre><output id="bdb3f"></output><p id="bdb3f"></p><p id="bdb3f"></p>

                        <pre id="bdb3f"><del id="bdb3f"><progress id="bdb3f"></progress></del></pre>

                              <ruby id="bdb3f"></ruby>

                              哎呀哎呀视频在线观看