【cocos2d-js官方文档】六、cc.async
来源:互联网 发布:mac windows 共享软件 编辑:程序博客网 时间:2024/05/16 08:26
概述
该单例模仿的是nodejs
的async
模块,只抽取了parallel
和map
这两个api,今后可能会根据需求继续添加。该单例的目的是简化异步调用的代码书写。
cc.async.parallel
异步执行多个任务。在H5中多为HTTP请求。
参数:
用法1:
cc.async.parallel([ function(cb){ cb(null, "a");//此处代替异步调用方法 }, function(cb){ cb(null, "B");//此处代替异步调用方法 }], function(err, results){ if(err) throw err;//error console.log(results);//["a", "B"]});
用法2:
cc.async.parallel([ function(cb){ cb(null, "a");//此处代替异步调用方法 }, function(cb){ cb(null, "B");//此处代替异步调用方法 }], function(item, count, totalNum){ console.log(item, count, totalNum);}, function(err, results){ if(err) return console.error(err); console.log(results);//["a", "B"]});
用法3:
var tempObj = { name : "TempObj", trigger : function(item, count, totalNum){ console.log(this.name);//TempObj console.log(item, count, totalNum); }, cb : function(err, results){ if(err) return console.error(err); console.log(this.name);//TempObj console.log(results);//["a", "B"] }};var option = { trigger : tempObj.trigger, triggerTarget : tempObj, cb : tempObj.cb, cbTarget : tempObj};cc.async.parallel([ function(cb){ cb(null, "a");//此处代替异步调用方法 }, function(cb){ cb(null, "B");//此处代替异步调用方法 }], option);
cc.async.map
参数:
用法1:
cc.async.map(["a", "B"], function(item, index, cb){ console.log(this.name);//TempObj cb(null, index + ":" + item);//此处代替异步调用方法}, function(err, results){ if(err) return console.error(err); console.log(results);//[ '0:a', '1:B' ]});
用法2:
cc.async.map({a:"a", b:"B"}, function(item, key, cb){ cb(null, key + ":" + item);//此处代替异步调用方法}, function(err, results){ if(err) return console.error(err); console.log(results);//{ a: 'a:a', b: 'b:B' }});
用法3:
var tempObj = { name : "TempObj", iterator : function(item, key, cb){ cb(null, key + ":" + item);//此处代替异步调用方法 }, cb : function(err, results){ if(err) return console.error(err); console.log(this.name);//TempObj console.log(results);//{ a: 'a:a', b: 'b:B' } }};var option = { iterator : tempObj.iterator, iteratorTarget : tempObj, cb : tempObj.cb, cbTarget : tempObj};
0 0
- 【cocos2d-js官方文档】六、cc.async
- 【cocos2d-js官方文档】六、cc.async
- 【cocos2d-js官方文档】八、cc.game
- 【cocos2d-js官方文档】九、cc.loader
- 【cocos2d-js官方文档】十一、cc.path
- 【cocos2d-js官方文档】十五、cc.sys
- 【Cocos2d-js官方文档】 九、cc.loader
- 【Cocos2d-js官方文档】八、cc.game
- 【cocos2d-js官方文档】八、cc.game
- 【cocos2d-js官方文档】九、cc.loader
- 【cocos2d-js官方文档】十一、cc.path
- 【cocos2d-js官方文档】十五、cc.sys
- cocos2d-js官方文档 cc.loader
- 【cocos2d-js官方文档】十四、cc.spriteFrameCache 改造说明
- 【cocos2d-js官方文档】十四、cc.spriteFrameCache 改造说明
- Cocos2d-JS 官方文档
- 【cocos2d-js官方文档】十三、CCSAXParser.js
- 【cocos2d-js官方文档】十三、CCSAXParser.js
- 教你如何上google(技术人员必看)
- android 定制有关电影院的座位或体育馆场馆运动的场地选择的实现
- 【cocos2d-js官方文档】五、Cocos2d-JS v3.0的新Action API
- Java对象自我救赎机制
- Linux/Unix下的任务管理器-top命令
- 【cocos2d-js官方文档】六、cc.async
- ios8 桌面图标圆角数字显示未读消息个数
- 几个常见的MySQL性能测试工具
- android流媒体之硬编码【代码篇】
- 【cocos2d-js官方文档】七、CCFileUtils
- ElasticSearch搜索常用命令
- Android源码Demo地址:http://www.apkbus.com
- 【cocos2d-js官方文档】八、cc.game
- leetcode笔记:Evaluate Reverse Polish Notation(逆波兰式的计算)