前言:


  什么叫做递延对象,生成一个递延对象只需调用jQuery.Deferred函数,deferred这个单词译为延期,推迟,即延迟的意思,那么在jQuery中


  又是如何表达延迟的呢,从递延对象中的then方法或许能找到这种延迟的行为,本文重点解读递延对象中的then方法


  神奇的then方法


  在实际项目应用中,一个页面或许有多个ajax请求,你可能会这样做:


  $.ajax({ url1, ... });$.ajax({ url2, ... });$.ajax({ url3, ... });...


  这样做的缺点:


  1、多个ajax同时发送请求,可能会造成服务器压力,对于富应用页面来说,如果请求过多,那是必然的;


  2、对于页面底部,或者说首屏不展示给用户浏览的部分需要发送的ajax请求,没有必要让它一开始加载页面后就发送请求,这样会造成页面响应缓慢


  jQuery递延对象中的then方法好像天生就是为了解决以上问题而设计的,它可以按照顺序依次处理多个异步请求,即第一个请求处理完后,


  再处理第二个请求,以此类推,这样既可以减轻服务器压力,又可以先发送首屏(从上到下)页面部分的请求,使页面响应更快


  代码实例


  varpromiseA = $.get(urlA);//这里添加promiseA的回调varpromiseB = promiseA.then( function(){


  return$.get(urlB);});//这里添加promiseB的回调


  varpromiseC = promiseB.then( function(){


  return$.get(urlC);});//这里添加promiseC的回调


  varpromiseD = promiseC.then( function(){


  return$.get(urlD);});//这里添加promiseD的回调


  再来看看then函数中的构造源码,通过上面的实例分析,相信眼前的你会恍然大悟的

相关文章

9个鲜为人知的HTML功能 小白怎么学习HTML5?新手入门必看 阿里巴巴常用的12个后端开发工具 sharepoint搭建文档服务器,SharePoint?Server教程 语义化标签与HTML5新增的布局标签 vector教程:如何进行项目 JetBrains PhpStorm v2021.2.0中文激活版 HTML5教程之新元素 前端基础入门:HTML5基础语法与标签 HTML5——SVG基础入门 android是前端还是后端 嵌入式开发要学哪些技能? 使用fiddler对手机APP进行抓包 HTML5薪资正一路飙升 如何才能学好HTML5开发 零基础如何迅速学习前端? html5中怎么利用canvas元素创建画布 实现html5移动端自适应布局的方法分享 HTML5移动应用开发 最佳HTML5应用开发工具有哪些? HTML5 移动页面自适应手机屏幕四类方法 html5手机网站常用的9个CSS属性 什么是web前端开发标准 Android开发用过的十大框架 Android混合开发,html5自己主动更新爬过的坑 HTML5中的移动开发框架有哪些? 分享5个主流的HTML5开发工具 HTML5开发培训教程学习之动效制作 网页开发HTML5 快速开发基于 HTML5 网络拓扑图应用 如何零基础入门前端开发? html5零基础入门学习教程(零基础学员必看) jquery删除ajax请求的方法 jquery中ajax中的参数,jquery中的ajax参数 jQuery AJAX 方法success()后台传来的4种数据详解 jquery中ajax常用的方法,jQuery ajax框架常用方法总结 jQuery AJAX中readyState与status的区别与联系 jquery ajax.then,神奇的then方法 jQuery validate+artdialog+jquery form实现弹出表单思路详解 ajax用来做什么的,jQuery是什么? java jquery ajax视频,【Ajax】之jQuery中的Ajax jquery中ajax应用之通用ajax()函数的实例 BootStrop前端框架入门教程详解 jQuery WEUI Select jquery是什么意思?jquery和js的区别是什么? 巧用案例学习jQuery框架三种事件绑定方式 jQuery 基础知识总结 引入JQuery.min.js文件 几款常用的高质量web前端框架 Jquery和bootstrap有哪些区别 easyui 验证 ajax提交表单提交表单提交