前端基础 - Defer对象
2016-02-25 13:19
337 查看
参考:http://www.ruanyifeng.com/blog/2011/08/a_detailed_explanation_of_jquery_deferred_object.html
上面一段代码的执行结果是 success 1, success 2.
这一段代码执行结果是 success1, fail 1, fail 2. 能解释一下否?
<script type="text/javascript" src="http://code.jquery.com/jquery-latest.js"></script> <script type="text/javascript"> // case 1, alert success 1, success 2 var dtd = $.Deferred(); // 新建一个Deferred对象 dtd.resolve('success'); dtd.then(function(msg){ alert(msg + ' 1'); return msg; }).fail(function(msg){ alert(msg + ' 1') return msg }).then(function(msg){ alert(msg + ' 2') return msg }).fail(function(msg){ alert(msg + ' 2') return msg }) </script>
上面一段代码的执行结果是 success 1, success 2.
<script type="text/javascript" src="http://code.jquery.com/jquery-latest.js"></script> <script type="text/javascript"> // case2, alert success1, fail 1, fail 2 var dtd = $.Deferred(); // 新建一个Deferred对象 dtd.resolve('success'); dtd.then(function(msg){ alert( msg + ' 1'); return new $.Deferred().reject('fail'); }).fail(function(msg){ alert( msg + ' 1'); return new $.Deferred().resolve('success'); }).then(function(msg){ alert( msg + ' 2'); return msg; }).fail(function(msg){ alert( msg + ' 2'); return msg; }) </script>
这一段代码执行结果是 success1, fail 1, fail 2. 能解释一下否?
相关文章推荐
- three.js加载obj模型
- React插件-测试工具集-克隆组件
- javascript Date format(js日期格式化) (转)
- EL-JSTL表达式
- js中使用new Date(str)创建时间对象不兼容firefox和ie的解决方式
- 13.4 javascript事件类型
- Jquery AJAX使用踩坑小记
- getjson时使用random= Math.random 解决数据缓存问题
- Js实现浏览器下标签页间切换触发的事件
- jsp详细说明
- the difference between imperative style and functional style
- HTML5 多图上传
- Js 内各种宽度
- css inline-block方式实现水平导航栏 解决空白问题
- html5的input标签的pattern正则匹配问题
- a标签的样式属性
- GitHub上README.md排版样式教程
- Safari浏览器inline-block水平对齐问题
- 该如何理解AMD ,CMD,CommonJS规范--javascript模块化加载学习总结
- CSS中的绝对定位与相对定位