// 没有及时清理的计时器或回调函数
var intervalId = setInterval(function () { //启动循环定时器后不清理
console.log('----')
}, 1000)
// clearInterval(intervalId); //清理定时器
情况3举例:
<script type="text/javascript">functionfn1() {var arr =new Array[100000];//这个数组占用了很大的内存空间functionfn2() {console.log(arr.length)
}return fn2
}var f =fn1()
f()
f =null//让内部函数成为垃圾对象-->回收闭包</script>
内存溢出(一种程序运行出现的错误)内存溢出:当程序运行需要的内存超过了剩余的内存时,就出抛出内存溢出的错误。
//内存溢出
var obj = {}
for (var i = 0; i < 10000; i++) {
obj[i] = new Array(10000000); //把所有的数组内容都放到obj里保存,导致obj占用了很大的内存空间
console.log('-----')
}