【ES6】16.generator函数的语法 10.(1)异步操作的同步化表达
来源:互联网 发布:js给集合添加元素 编辑:程序博客网 时间:2024/06/05 05:32
谢谢阮老师的ES6!
16.generator函数的语法
10.(1)异步操作的同步化表达
=======================分割线=======================
通过generator函数部署ajax操作,用同步的方式表达
1.makeAjaxCall函数
//忽略浏览器兼容性
function makeAjaxCall(url,callback){
console.log("开始向"+url+"进行异步请求");
var xmlhttp = new XMLHttpRequest();
xmlhttp.onreadystatechange=function()
{
if (xmlhttp.readyState==4 && xmlhttp.status==200)
{
console.log("回调开始");
callback(xmlhttp.responseText);
}
}
xmlhttp.open("GET",url,true);
xmlhttp.send(null);
}
2.request函数
function request(url){
makeAjaxCall(url, function(response){
console.log(response);
it.next(response);
});
}
3.generator函数
function* main(){
var result = yield request("http://localhost:8888/initRecords.action");
alert(result);
}
var it=main();
总结:
异步的同步表达。如果在makeAjaxCall使用同步请求open(,,false),则报错Generator is already running。应该是因为同步的状态下,前一次的next没执行完,所以无法启动下一次next吧。
- 【ES6】16.generator函数的语法 10.(1)异步操作的同步化表达
- es6 Generator函数的语法
- es6 Generator与异步的同步书写
- Generator 异步操作的同步化写法
- ES6 —(Generator 函数的语法)
- es6的Generator函数
- ES6 —(Generator 函数的异步应用)
- ES6学习笔记之Generator 函数的语法
- ES6-Generator与异步操作
- es6 javascript 的Generator 函数 (上)
- es6 javascript 的Generator 函数 (下)
- Javascript的异步编程(下)及es6之generator
- es6的generator
- 同步化,同步,异步化,异步操作的区别
- 同步化,同步,异步化,异步操作的区别
- ES6 generator 与 koa 中间件 是如何 generator解决异步的
- ES6定义函数的新方法(generator和箭头函数)
- 遍历完全二叉树(ES6的Generator函数)
- redis加减操作
- js判断方法变量是否存在
- 设计一个具有GetMin功能的栈
- Redis实现高并发下的抢购、秒杀功能
- 素数打表(小模板)
- 【ES6】16.generator函数的语法 10.(1)异步操作的同步化表达
- 3天速成混合app开发_01环境部署
- 排序算法
- ZOJ3785-What day is that day?
- EventBus使用详解
- matlab kmeans 代码
- Node.js安装及环境配置之Windows篇
- .gitignore 的使用
- Hexo搭建github博客绑定顶级域名和www子域名