jquery不会自动回收xmlHttpRequest对象 导致了内存溢出


Posted in Javascript onJune 18, 2012

之前一直都不曾注意到这一点,今天幸亏看了kuibono的文章,下面是kuibono给出的手动回收xmlHttpRequest对象的代码片断:
每次jquery的Ajax请求都会创建一个xmlHttprequest对象,理论上讲,长连接的请求是一个无限递归,请求数量是非常大的,但是由于每次请求都会建立一个新的xmlhttprequest,而且jquery不会自动回收资源,所以导致了内存溢出。

通过查看jquery API,发现jquery还有一个 complete对象,是请求完成后回调函数 (请求成功或失败之后均调用)。 同时有两个参数XMLHttpRequest, textStatus。所以,我们只需要在请求完成后,将传回的XMLHttprequest对象手工回收即可,代码如下:

$.ajax({ 
url: "https://3water.com", 
data: { name: "xxxx" }, 
dataType: "xml", 
success: function (data, textStatus) { 
//do something... 
}, 
complete: function (XHR, TS) { XHR = null } 
});
Javascript 相关文章推荐
浅析IE10兼容性问题(frameset的cols属性)
Jan 03 Javascript
Juery解决tablesorter中文排序和字符范围的方法
May 06 Javascript
JS实现的手机端精简幻灯片效果
Sep 05 Javascript
Bootstrap响应式侧边栏改进版
Sep 17 Javascript
jQuery遍历节点方法汇总(推荐)
May 13 jQuery
解决Vue2.0自带浏览器里无法打开的原因(兼容处理)
Jul 28 Javascript
express框架实现基于Websocket建立的简易聊天室
Aug 10 Javascript
详解layui中的树形关于取值传值问题
Jan 16 Javascript
用vscode开发vue应用的方法步骤
May 06 Javascript
jQuery层叠选择器用法实例分析
Jun 28 jQuery
Vue form表单动态添加组件实战案例
Sep 02 Javascript
详解JavaScript原型与原型链
Nov 16 Javascript
Jquery上传插件 uploadify v3.1使用说明
Jun 18 #Javascript
uploadify 3.0 详细使用说明
Jun 18 #Javascript
通过Javascript创建一个选择文件的对话框代码
Jun 16 #Javascript
通过Javascript将数据导出到外部Excel文档的函数代码
Jun 15 #Javascript
精心挑选的15个jQuery下拉菜单制作教程
Jun 15 #Javascript
jQuery操作input type=radio的实现代码
Jun 14 #Javascript
jQuery操作 input type=checkbox的实现代码
Jun 14 #Javascript
You might like
关于Appserv无法打开localhost问题的解决方法
2009/10/16 PHP
php数组函数序列之ksort()对数组的元素键名进行升序排序,保持索引关系
2011/11/02 PHP
PHP 登录记住密码实现思路
2013/05/07 PHP
PHP数据库操作之基于Mysqli的数据库操作类库
2014/04/19 PHP
PHP foreach遍历多维数组实现方式
2016/11/16 PHP
PHP基于迭代实现文件夹复制、删除、查看大小等操作的方法
2017/08/11 PHP
PHP中的self关键字详解
2019/06/23 PHP
Javascript Select操作大集合
2009/05/26 Javascript
jQuery News Ticker 基于jQuery的即时新闻行情展示插件
2011/11/05 Javascript
基于JavaScript 数据类型之Boolean类型分析介绍
2013/04/19 Javascript
js过滤HTML标签以及空格的思路及代码
2013/05/24 Javascript
jQuery Validate 数组 全部验证问题
2017/01/12 Javascript
从零学习node.js之利用express搭建简易论坛(七)
2017/02/25 Javascript
详解Vue2 添加对scss的支持
2019/01/02 Javascript
详解javascript函数写法大全
2019/03/25 Javascript
20个必会的JavaScript面试题(小结)
2019/07/02 Javascript
layui 实现二级弹窗弹出之后 关闭一级弹窗的方法
2019/09/18 Javascript
使用layui实现树形结构的方法
2019/09/20 Javascript
vue之debounce属性被移除及处理详解
2019/11/13 Javascript
HTML+JS实现“代码雨”效果源码(黑客帝国文字下落效果)
2020/03/17 Javascript
解决Vue的项目使用Element ui 走马灯无法实现的问题
2020/08/03 Javascript
Vue左滑组件slider使用详解
2020/08/21 Javascript
javascript实现时钟动画
2020/12/03 Javascript
python的变量与赋值详细分析
2017/11/08 Python
深入浅析Python2.x和3.x版本的主要区别
2018/11/30 Python
Pandas之ReIndex重新索引的实现
2019/06/25 Python
python redis连接 有序集合去重的代码
2019/08/04 Python
解决django model修改添加字段报错的问题
2019/11/18 Python
关于python pycharm中输出的内容不全的解决办法
2020/01/10 Python
python如何把字符串类型list转换成list
2020/02/18 Python
python中round函数如何使用
2020/06/19 Python
matplotlib源码解析标题实现(窗口标题,标题,子图标题不同之间的差异)
2021/02/22 Python
英国莱斯特松木橡木家具网上商店:Choice Furniture Superstore
2019/07/05 全球购物
意大利买卖二手奢侈品网站:LAMPOO
2020/06/03 全球购物
《自选商场》教学反思
2014/02/14 职场文书
大气污染防治方案
2014/05/19 职场文书