js 异步操作回调函数如何控制执行顺序


Posted in Javascript onDecember 24, 2013

需求:
fun A() { asyn(parm1, parm2, onsuccess(){ }) ;}
fun B() {asyn(paem1, parm2, onsuccess(){}) ;}

函数B要求执行在函数A之后

异步执行
如果直接使用
A();
B();

是不能够满足执行条件的。

考虑将B作为回调函数传递给A,然后A再执行的onsucess中执行B函数
A(B);

即可实现功能需求。

js是单线程的.

1、调用函数时,如果参数多于定义时的个数,则多余的参数将会被忽略,如果少于定义时的个数则缺失的参数数会被自动赋予undefined值。
2、如果是用function语句声明的函数定义则不可以出现在循环或条件语句中,但是如果是用函数直接量方法的函数定义则可以出现在任何js表达式中。
3、arguments对象
函数的arguments对象就像一个数组,里面保存着函数调用时的实际参数,可以用arguments[0]、arguments[1]、arguments[2]…等来引用这些参数,即使这些参数在定义函数时是没有的。但arguments并非真正的数组对象。
function a(x,y){
arguments[0] //表示第一个参数x
arguments[1] //表示第一个参数y
arguments[2] //表示第三个参数,前提是在调用函数时传入了三个参数

arguments.length //表示实际传入参数的个数
arguments.callee(x,y) //调用自身 }
arguments对象具有length属性,表示的是函数调用时实际传入的参数的个数。
arguments对象还具有callee属性,用来引用当前正在执行的函数,这个在匿名函数中尤其有用。
4、函数的length属性(没错,函数也是具有length属性的)
与arguments.length不同,函数的length属性表示的是在定义函数时的形参个数,而不是函数调用时的实际参数个数。可以用arguments.callee.length来调用函数的length属性。

Javascript 相关文章推荐
javascript 特殊字符串
Feb 25 Javascript
JavaScript创建一个欢迎cookie弹出窗实现代码
Mar 15 Javascript
js 动态加载事件的几种方法总结
Dec 25 Javascript
jQuery获取iframe的document对象的方法
Oct 10 Javascript
Javascript中arguments对象详解
Oct 22 Javascript
Javascript设计模式之观察者模式的多个实现版本实例
Mar 03 Javascript
css如何让浮动元素水平居中
Aug 07 Javascript
使用html+js+css 实现页面轮播图效果(实例讲解)
Sep 21 Javascript
JavaScript数据结构与算法之队列原理与用法实例详解
Nov 22 Javascript
vue-router传递参数的几种方式实例详解
Nov 13 Javascript
Nginx设置为Node.js的前端服务器方法总结
Mar 27 Javascript
详解JWT token心得与使用实例
Aug 02 Javascript
表格奇偶行设置不同颜色的核心JS代码
Dec 24 #Javascript
js中function()使用方法
Dec 24 #Javascript
document节点对象的获取方式示例介绍
Dec 24 #Javascript
JQuery结合CSS操作打印样式的方法
Dec 24 #Javascript
jQuery动态改变图片显示大小(修改版)的实现思路及代码
Dec 24 #Javascript
jquery自动切换tabs选项卡的具体实现
Dec 24 #Javascript
从数组中随机取x条不重复数据的JS代码
Dec 24 #Javascript
You might like
PHP扩展编写点滴 技巧收集
2010/03/09 PHP
PHP精确计算功能示例
2016/11/29 PHP
PHP实现的XML操作类【XML Library】
2016/12/29 PHP
PHP获取数组中单列值的方法
2017/06/10 PHP
js注意img图片的onerror事件的分析
2011/01/01 Javascript
jQuery的each终止或跳过示例代码
2013/12/12 Javascript
使用javascript控制cookie显示和隐藏背景图
2014/02/12 Javascript
JS通过分析userAgent属性来判断浏览器的类型及版本
2014/03/28 Javascript
node.js入门教程迷你书、node.js入门web应用开发完全示例
2014/04/06 Javascript
原生javascript实现addClass,removeClass,hasClass函数
2016/02/25 Javascript
JavaScript SHA-256加密算法详细代码
2016/10/06 Javascript
jQuery获取this当前对象子元素对象的方法
2016/11/29 Javascript
angular-ui-sortable实现可拖拽排序列表
2016/12/28 Javascript
浅谈node中的exports与module.exports的关系
2017/08/01 Javascript
快速解决处理后台返回json数据格式的问题
2018/08/07 Javascript
vue 根据数组中某一项的值进行排序的方法
2018/08/30 Javascript
vue.js 实现点击按钮动态添加li的方法
2018/09/07 Javascript
vue 移动端适配方案详解
2018/11/15 Javascript
小程序自定义单页面、全局导航栏的实现代码
2019/03/15 Javascript
微信小程序数据统计和错误统计的实现方法
2019/06/26 Javascript
layui问题之模拟table表格中的选中按钮选中事件的方法
2019/09/20 Javascript
Python查看多台服务器进程的脚本分享
2014/06/11 Python
python 列表降维的实例讲解
2018/06/28 Python
解决Python下json.loads()中文字符出错的问题
2018/12/19 Python
详解python中list的使用
2019/03/15 Python
python 列表输出重复值以及对应的角标方法
2019/06/11 Python
Django文件上传与下载(FileFlid)
2019/10/06 Python
HTML5中判断横屏竖屏的方法(移动端)
2016/08/04 HTML / CSS
护士求职推荐信范文
2013/11/23 职场文书
银行贷款承诺书
2014/03/29 职场文书
土建专业毕业生自荐书
2014/07/04 职场文书
2014年反洗钱工作总结
2014/11/22 职场文书
学校清洁工岗位职责
2015/04/15 职场文书
百家讲坛观后感
2015/06/12 职场文书
导游词之阳朔遇龙河
2019/12/16 职场文书
浅谈自定义校验注解ConstraintValidator
2021/06/30 Java/Android