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 相关文章推荐
验证用户是否修改过页面的数据的实现方法
Sep 26 Javascript
Jquery从头学起第四讲 jquery入门教程
Aug 01 Javascript
字符串的replace方法应用浅析
Dec 06 Javascript
jQuery获取节点和子节点文本的方法
Jul 22 Javascript
自编jQuery插件实现模拟alert和confirm
Sep 01 Javascript
JavaScript学习笔记之定时器
Jan 22 Javascript
jQuery实现的仿百度,仿谷歌搜索下拉框效果示例
Dec 30 Javascript
详解Vue学习笔记进阶篇之列表过渡及其他
Jul 17 Javascript
详解React-Native全球化多语言切换工具库react-native-i18n
Nov 03 Javascript
Vue下滚动到页面底部无限加载数据的示例代码
Apr 22 Javascript
Angular5.0 子组件通过service传递值给父组件的方法
Jul 13 Javascript
微信小程序开发实现消息推送
Nov 18 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
重量级动漫纷纷停播!唯独OVERLORD第四季正在英魂之刃继续更新
2020/05/06 日漫
PHP快速按行读取CSV大文件的封装类分享(也适用于其它超大文本文件)
2014/04/10 PHP
PHP 面向对象程序设计(oop)学习笔记(一) - 抽象类、对象接口、instanceof 和契约式编程
2014/06/12 PHP
jquery获取多个checkbox的值异步提交给php的方法
2015/06/24 PHP
thinkPHP删除前弹出确认框的简单实现方法
2016/05/16 PHP
浅谈Laravel模板实体转义带来的坑
2019/10/22 PHP
点击广告后才能获得下载地址
2006/10/26 Javascript
Javascript 自定义类型方法小结
2010/03/02 Javascript
基于jQuery的获取标签名的代码
2012/07/16 Javascript
Js动态添加复选框Checkbox的实例方法
2013/04/08 Javascript
js中settimeout方法加参数的使用实例
2014/02/27 Javascript
js数值和和字符串进行转换时可以对不同进制进行操作
2014/03/05 Javascript
php+js实现倒计时功能
2014/06/02 Javascript
JsRender for object语法简介
2014/10/31 Javascript
JQuery操作元素的css样式
2015/03/09 Javascript
jQuery实现表格展开与折叠的方法
2015/05/04 Javascript
为何JS操作的href都是javascript:void(0);呢
2015/11/12 Javascript
JS使用post提交的两种方式
2015/12/03 Javascript
canvas实现刮刮卡效果
2017/03/14 Javascript
jquery中$.fn和图片滚动效果实现的必备知识总结
2017/04/21 jQuery
AngularJS页面带参跳转及参数解析操作示例
2017/06/28 Javascript
Vue 中使用vue2-highcharts实现曲线数据展示的方法
2018/03/05 Javascript
JS实现简单获取最近7天和最近3天日期的方法
2018/04/18 Javascript
JS实现随机抽选获奖者
2019/11/07 Javascript
IDEA配置jQuery, $符号不再显示黄色波浪线的问题
2020/10/09 jQuery
python处理文本文件实现生成指定格式文件的方法
2014/07/31 Python
Python中list列表的一些进阶使用方法介绍
2015/08/15 Python
python psutil库安装教程
2018/03/19 Python
python和shell获取文本内容的方法
2018/06/05 Python
python爬取本站电子书信息并入库的实现代码
2020/01/20 Python
TensorFlow命名空间和TensorBoard图节点实例
2020/01/23 Python
乐天旅游香港网站:日本饭店预订
2017/11/29 全球购物
家长会欢迎词
2015/01/23 职场文书
2015年幼儿园中班下学期工作总结
2015/05/22 职场文书
初三英语教学反思
2016/02/15 职场文书
深入浅出的讲解:信号调制到底是如何实现的
2022/02/18 无线电