JS中的内存泄漏
明天下午面试微店的前端开发职位,有点紧张~~
刚刚正好看到js中的内存泄露,所以来整理一番。
-
给DOM对象添加的属性是对一个js对象的引用。
var MyObject = {};
document.getElementById('myDiv').myProp = MyObject;
解决方法:
在window.onunload事件中写上: document.getElementById('myDiv').myProp = null;
-
DOM对象和JS对象相互引用。
在onunload事件中写上: document.getElementById('myDiv').myProp = null;
-
给DOM对象用attachEvent()绑定事件。
在onunload事件中写上: element.detachEvent('onclick', doClick);
-
反复重写同一个属性。
避免这种情况发生就是啦!
-
由外到内使用appendChild()方法。
由内到外执行即可。