web面试常见问题补充

jquery Ajax

$ajax({

Url:”test.html”,-----发送请求的地址

Async:true;------异步操作

Cache:true,-----可以从缓冲中加载

Type:”GET”,------请求方法

Datatype:”json”,-------服务器返回数据类型

Sucess:function(data){ ----------调用成功语句

If(data==”OK”){

Console.log(data);

}

},

error:function(data){-----------------------(errorfunction(XMLHttpRequest, textStatus)失败语句

 

If(data==”OK”){

Console.log(data);

}

},

complete:function(data){--------------结束语句

If(data==”OK”){

Console.log(data);

}

},

 

})

 

 

$.get(

Url:”test.html”,{name:”xsx”,age:”19”},function(data){

Console.log(data);

})

$.post(

Url:”rest.xml”,{uname:”xsx”,age:”20”},function(data){

If(data==”OK”){

Console.log(data);

}

})

Jquery Deferred(jquery promis)

$.Deferred()返回一个对象,我们可以称之为Deferred对象,上面挂着一些熟悉的方法如:done、fail、then等。jquery就是用这个Deferred对象来注册异步操作的回调函数,修改并传递异步操作的状态。

有一个弊端,因为执行runAsync()可以拿到def对象,而def对象上又有resol方法,可以在外部进行修改,回调函数会停止。

jquery提供了一个promise方法,就在def对象上,他可以返回一个受限的Deferred对象,所谓受限就是没有resolve、reject等方法,无法从外部来改变他的状态

Function run(){

Var def=$.Deferred();

setTimeout(function(){

Console.log(“执行完成”);

def.resolve=”随便什么都行”;

},2000);

Return def.promise();

}

run.done(function(){

    console.log(“执行成功”)

})

.fail(function(){

Console.log(“函数失败”);

})

 

$when方法

jquery中,还有一个$.when方法来实现Promise,与ES6中的all方法功能一样,并行执行异步操作,在所有的异步操作执行完后才执行回调函数。不过$.when并没有定义在$.Deferred中,看名字就知道,$.when,它是一个单独的方法。与ES6的all的参数稍有区别,它接受的并不是数组,而是多个Deferred对象

$.when(runAsync(), runAsync2(), runAsync3())

.then(function(data1, data2, data3){

    console.log('全部执行完成');

    console.log(data1, data2, data3);

});

 

总结一下就是$.Deferred实现了Promise规范,then、done、fail、always是Deferred对象的方法。$.when是一个全局的方法,用来并行运行多个异步任务,与ES6的all是一个功能。ajax返回一个Deferred对象,success、error、complete是ajax提供的语法糖,功能与Deferred对象的done、fail、always一致。就酱。

参考网址:http://www.cnblogs.com/lvdabao/p/jquery-deferred.html

http://www.ruanyifeng.com/blog/2011/08/a_detailed_explanation_of_jquery_deferred_object.html

转载于:https://www.cnblogs.com/xieshuxin/p/6705715.html

本文来自互联网用户投稿,该文观点仅代表作者本人,不代表本站立场。本站仅提供信息存储空间服务,不拥有所有权,不承担相关法律责任。如若转载,请注明出处:http://www.mzph.cn/news/488608.shtml

如若内容造成侵权/违法违规/事实不符,请联系多彩编程网进行投诉反馈email:809451989@qq.com,一经查实,立即删除!

相关文章

如何与病毒搏斗?这部BBC“史诗级大片”告诉你答案

来源:惠在湖北 我们知道,在目前没有特效药和疫苗的情况下,被治愈的新型冠状病毒肺炎患者,离不开医学的帮助,而治愈的关键,依靠的是人体自身的免疫力。病毒是如何入侵的?免疫力从何而来&#xff…

单系统 台电x80pro_台电X80 Pro (E6E9)-双系统安装文件平板固件

这是台电X80 Pro (E6E9)-双系统安装文件平板固件,台电X80 Pro (E6E9)出来已经有一段时间了 相信大家都体验到了新机的强大了吧可使用时难免会发生一些意外 比如账户锁密码忘记 手机中毒 使用卡顿 不开机或者开机定屏 无故黑屏等 那怎么解决呢 今天就带大家一起来了解…

Ranklib源码剖析--LambdaMart

Ranklib是一套优秀的Learning to Rank领域的开源实现,其中有实现了MART,RankNet,RankBoost,LambdaMart,Random Forest等模型。其中由微软发布的LambdaMART是IR业内常用的Learning to Rank模型,本文主要介绍…

gentoo linux 分区_小白安装Gentoo Linux操作系统——磁盘分区

磁盘分区规划在日常安装Gentoo Linux操作系统前需要对系统使用的磁盘分区进行规划,规划原则需考虑磁盘容量、系统规模与用途。现阶段个人PC的磁盘容量已近乎TB级别,磁盘容量已不再成为系统安装的约束,那么对系统规模与用途的考虑则是安装Gent…

markdown 行内公式_使用Markdown快速编辑公众号技巧之mdnice

请使用 Chrome 浏览器。请阅读下方文本熟悉工具使用方法,本文可直接拷贝到微信中预览。1 Markdown Nice 简介支持自定义样式的 Markdown 编辑器支持微信公众号、知乎和稀土掘金欢迎扫码回复「排版」加入用户群2 主题https://preview.mdnice.com/themes/欢迎提交主题…

AI人必看!89页全网最全清华知识图谱报告(附PDF)

来源:智东西知识图谱(Knowledge Graph)是人工智能的重要分支技术,它在2012年由谷歌提出,成为建立大规模知识的杀手锏应用,在搜索、自然语言处理、智能助手、电子商务等领域发挥着重要作用。知识图谱与大数据…

mui.init方法配置

mui框架将很多功能配置都集中在mui.init方法中,要使用某项功能,只需要在mui.init方法中完成对应参数配置即可,目前支持在mui.init方法中配置的功能包括: 创建子页面、 关闭页面、 手势事件配置、 预加载、 下拉刷新、上拉加载、 设…

python wx模块下choice列表框值怎么更新_wx python

一、静态文本控件wx.StaticText(parent, id, label, poswx.DefaultPosition, sizewx.DefaultSize, style0, name"staticText")wx.StaticText构造函数的参数parent:父窗口部件。id:标识符。使用-1可以自动创建一个唯一的标识。label&#xf…

AI战“疫”!人工智能在疫情中的重要作用

来源:腾讯新闻网新冠肺炎疫情牵动着全国人民的心!在防控疫情部署落实工作中,上海着力将人工智能等现代信息技术深入应用于疫情态势研判、传播路径分析、精准防控、有效治疗及后续治理等各工作环节。通过提供更加精准有效的科学决策依据&#…

linux 判断指针是否可读_Linux进程间通信——消息队列

概念什么是消息队列?消息队列亦称报文队列,也叫做信箱。是Linux的一种通信机制,这种通信机制传递的数据具有某种结构,而不是简单的字节流。消息队列的本质其实是一个内核提供的链表,内核基于这个链表,实现了…

【人工智能】中科院2019全球人工智能发展白皮书!八大关键技术中国崛起中,国产AI芯片耀眼...

来源:产业智能官人工智能是一个很宽泛的概念,概括而言是对人的意识和思维过程的模拟,利用机器学习和数据分析方法赋予机器类人的能力。人工智能将提升社会劳动生产率,特别是在有效降低劳动成本、优化产品和服务、创造新市场和就业…

斜度符号标注_几何作图之斜度和锥度

虽然机件的形状各有不同,但它们的图样基本上都是由直线、圆弧和其它一些曲线所组成的几何形体。因此在绘图时,常常要运用一些几何作图方法。斜度和锥度1.斜度(GB/T 4458.4-2003)斜度是指一直线(或平面)对另一条直线(或平面)的倾斜程度&#x…

shiro 手动创建session_Shiro 和 spring boot 的集成

1 添加依赖使用 shiro-spring-boot-web-starter 在 spring boot 中集成 shiro 只需要再添加一个依赖<dependency><groupId>org.apache.shiro</groupId><artifactId>shiro-spring-boot-web-starter</artifactId><version>1.4.1</version…

动态规划 所有题型的总结

1 动态规划 1.1 定义 动态规划的核心是状态和状态转移方程。 在记忆化搜索中&#xff0c;可以为正在处理的表项声明一个引用&#xff0c;简化对它的读写操作&#xff1b; 动态规划解决的是多阶段决策问题&#xff1b; 初始状态→│决策&#xff11;│→│决策&#xff12;│→……

mysql事务嵌套 php_使用以下代码,MySQL中的PHP“嵌套”事务是否...

好的,我正在寻找使用PHP在MySQL中进行“嵌套”事务的解决方案,并且正如您在MySQL文档中所知的那样,不可能在事务内进行事务(Mysql transactions within transactions).我试图使用http://php.net/manual/en/pdo.begintransaction.php中建议的Database类,但不幸的是,这对我来说是…

美智库:马赛克战是人工智能与自主系统支撑的决策中心战

来源&#xff1a;国防科技要闻编者按2020年2月11日&#xff0c;美战略与预算评估中心发布报告《马赛克战&#xff1a;利用人工智能和自主系统实施决策中心战》。针对大国战略竞争&#xff0c;报告建议美国防部摒弃当前以消耗战为中心的理念&#xff0c;采用决策中心战。报告分析…

echarts山东地图_用 Python 绘制个人足迹地图

前两年&#xff0c;足迹地图小程序风靡朋友圈&#xff0c;一时间大家都流行晒自己的旅行地图。但是&#xff0c;笔者最近体验了好几款足迹地图的小程序&#xff0c;发现这些小程序虽然号称是足迹地图&#xff0c;但最多只是展示到省级别&#xff0c;无法精确到市级别&#xff0…

VC/VS开发问题集锦

&#xff08;1&#xff09;如何在一个CString的字符串中,以","为分割点,提取子字符串 CString a"322,787,123";int na.Find(","); //查找第一个","的位置ba.left(n); //将","左边的值取出给bint lengtha.…

AI 芯片发展的前世今生

来源&#xff1a;《微纳电子与智能制造》期刊作者&#xff1a;任 源、潘 俊、刘京京、何燕冬、何 进现代电子产品和设备在诸如通信 、娱乐 、安全和医疗保健等许多方面改善了我们的生活质量 &#xff0c;这主要是因为现代微电子技术的发展极大地改变了人们的日常工作和互动方式…

用户解锁不存在_苹果推送iOS 13.5测试版,戴口罩解锁更顺畅

目前最新的 iOS 系统正式版为 13.4.1&#xff0c;之前苹果已经开始 iOS 13.4.5 的测试工作&#xff0c;并于 4 月 16 日推送了 Beta2 版本。令人意外的是&#xff0c;今日凌晨苹果为参与测试的设备直接推送了 iOS 13.5 的测试版更新&#xff0c;而且是 Beta3 版本(「iOS 13.5 B…