84669인 학습
152542인 학습
20005인 학습
5487인 학습
7821인 학습
359900인 학습
3350인 학습
180660인 학습
48569인 학습
18603인 학습
40936인 학습
1549인 학습
1183인 학습
32909인 학습
클로저의 DOM 개체에 대한 순환 참조는 낮은 버전의 IE에서 메모리 누수를 발생시키는 것으로 알려져 있습니다. 그렇다면 jq 객체순환 참조가 메모리 누수를 일으킬까요? 예: 다음 함수로 인해 메모리 누수가 발생합니까?
闭关修行中......
예, 이 요소가 있으면 #butt在你执行这个函数后从Document中移除,那么它不会被gc回收,因为还存在一个强引用$butt。使用这种方式引用对象可以减少动态构建jq对象的开销,但是需要在这个dom被销毁的时候手动off掉所有引用,比如你这个$butt销毁后应该销毁你的事件引用。$butt.off()。另一种方式是在你的事件函数中不要使用闭包,而是使用动态构建的方式。比如$(this).html('hahah')
#butt
$butt
$butt.off()
$(this).html('hahah')
예, 이 요소가 있으면
#butt
在你执行这个函数后从Document中移除,那么它不会被gc回收,因为还存在一个强引用$butt
。使用这种方式引用对象可以减少动态构建jq对象的开销,但是需要在这个dom被销毁的时候手动off掉所有引用,比如你这个
$butt
销毁后应该销毁你的事件引用。$butt.off()
。另一种方式是在你的事件函数中不要使用闭包,而是使用动态构建的方式。比如
$(this).html('hahah')