> 웹 프론트엔드 > JS 튜토리얼 > jquery가 xmlHttpRequest 객체를 자동으로 재활용하지 않아 메모리 오버플로_jquery가 발생합니다.

jquery가 xmlHttpRequest 객체를 자동으로 재활용하지 않아 메모리 오버플로_jquery가 발생합니다.

WBOY
풀어 주다: 2016-05-16 17:52:44
원래의
1038명이 탐색했습니다.

다행히도 저는 오늘 kuibono의 기사를 읽었습니다. 다음은 xmlHttpRequest 객체를 수동으로 재활용하기 위해 제공한 코드 조각입니다.
jquery의 모든 Ajax 요청은 이론적으로 xmlHttprequest 객체를 생성합니다. 긴 연결은 무한 재귀이며 요청 수가 매우 많습니다. 그러나 각 요청은 새로운 xmlhttprequest를 생성하고 jquery는 자동으로 리소스를 재활용하지 않으므로 메모리 오버플로가 발생합니다.

jquery API를 살펴보면 jquery에도 요청 완료 후(요청 성공 또는 실패 후 호출) 콜백 함수인 완전한 객체가 있다는 것을 알았습니다. XMLHttpRequest와 textStatus라는 두 개의 매개변수가 동시에 있습니다. 따라서 요청이 완료된 후 반환된 XMLHttprequest 객체만 수동으로 재활용하면 됩니다. 코드는 다음과 같습니다.

코드 복사 코드는 다음과 같습니다:

$.ajax({
url: "http://www.jb51.net",
data: { name: "xxxx" },
dataType: "xml",
success: function (data, textStatus) {
//뭔가를 하세요...
},
complete: function (XHR, TS) { XHR = null }
})
관련 라벨:
원천:php.cn
본 웹사이트의 성명
본 글의 내용은 네티즌들의 자발적인 기여로 작성되었으며, 저작권은 원저작자에게 있습니다. 본 사이트는 이에 상응하는 법적 책임을 지지 않습니다. 표절이나 침해가 의심되는 콘텐츠를 발견한 경우 admin@php.cn으로 문의하세요.
인기 튜토리얼
더>
최신 다운로드
더>
웹 효과
웹사이트 소스 코드
웹사이트 자료
프론트엔드 템플릿