js面向对象编程指南学习笔记--闭包封装HTTP请求
来源:互联网 发布:游戏优化差是什么意思 编辑:程序博客网 时间:2024/06/07 18:55
js面向对象编程指南学习笔记–闭包封装HTTP请求
首先补充一下js 闭包 的概念,
闭包是指可以包含自由(未绑定到特定对象)变量的代码块;这些变量不是在这个代码块内或者任何全局上下文中定义的,而是在定义代码块的环境中定义(局部变量)。闭包可以让局部变量升级到全局变量的一种js特有的方法。
下面是实例代码。改代码实现了封装http请求:
下面是封装request函数和封装创建XMR对象函数:
function getXmr(){ // 跨浏览器创建XMR对象 var ids = ['MSXML2.XMLHTTP.3.0', 'MSXML2.XMLHTTP', 'Microsoft.XMLHTTP']; var xmr; if(XMLHttpRequest){ // modern browser xmr = new XMLHttpRequest(); }else{ for(var i = 0;i < ids.length;i++){ try{ xmr = new ActiveXObject(ids[i]); break; }catch(e){} } } return xmr;}function request(url,callback) { // 封装request请求函数 var xmr = getXmr(); xmr.onreadystatechange = (function(myXmr){ return function(){ if(myXmr.readyState === 4 && myXmr.status === 200){ // response ok callback(myXmr); } } })(xmr); xmr.open('GET',url,true); xrm.send('');}
下面是实例代码:
(可以实现多http请求):
request('http://example.com/somefile.txt', function(o){ document.getElementById('text').innerHtml = o.responseText; });request('http://example.com/somefile.txt', function(o){ document.getElementById('html').innerHtml = o.responseText; });request('http://example.com/somefile.txt', function(o){ document.getElementById('body').innerHtml = o.responseText; });
0 0
- js面向对象编程指南学习笔记--闭包封装HTTP请求
- JS面向对象编程--封装
- js面向对象编程指南学习笔记--遍历DOM节点树
- 面向对象学习笔记-封装
- JS---JavaScript面向对象编程<一>:封装
- js - JavaScript面向对象编程<一>:封装
- JS面向对象编程学习
- JS学习-面向对象编程
- JavaScript面向对象编程指南 的笔记
- PYTHON面向对象编程指南笔记
- js面向对象学习笔记
- js面向对象-闭包
- js 实现对ajax请求面向对象的封装
- 【学习笔记03】java面向对象-封装
- js--面向对象--封装
- js面向对象-封装
- JS面向对象封装
- js面向对象--封装
- Import theano gives the AttributeError: module 'theano' has no attribute 'gof'
- part-18 压摆率SR
- 利用栈实现软中断
- 如何分析java进程中哪个线程最耗资源
- 【滤波】卡尔曼matlab仿真代码
- js面向对象编程指南学习笔记--闭包封装HTTP请求
- 【算法-排序】杂记
- java开发遇到的问题小计
- 解决Vuser停在Gradual Exiting状态不动的问题
- 商品展示案例(ListView的用法)
- 新增投资人数
- linux上JDK的安装和环境变量的配置
- 打印数字
- NYOJ-迷宫寻宝(一)【搜索|广搜】