js参考---内存溢出与内存泄露
一、总结
一句话总结:
内存溢出:比如水杯里面的水倒满就溢出了,当程序运行需要的内存超过了剩余的内存时
内存泄露:占用的内存没有及时释放,内存泄露积累多了就容易导致内存溢出
二、内存溢出与内存泄露
博客对应课程的视频位置:
1 <!DOCTYPE html> 2 <html lang="en"> 3 <head> 4 <meta charset="UTF-8"> 5 <title>02_内存溢出与内存泄露</title> 6 </head> 7 <body> 8 9 <!-- 10 1. 内存溢出 11 * 一种程序运行出现的错误 12 * 当程序运行需要的内存超过了剩余的内存时, 就出抛出内存溢出的错误 13 2. 内存泄露 14 * 占用的内存没有及时释放 15 * 内存泄露积累多了就容易导致内存溢出 16 * 常见的内存泄露: 17 * 意外的全局变量 18 * 没有及时清理的计时器或回调函数 19 * 闭包 20 --> 21 22 <script type="text/javascript"> 23 24 // 1. 内存溢出 25 /*var obj = {} 26 for (var i = 0; i < 100000; i++) { 27 obj[i] = new Array(10000000) 28 } 29 console.log('------')*/ 30 31 // 2. 内存泄露 32 // 意外的全局变量 33 function fn () { 34 a = [] //不小心没有var定义 35 } 36 fn() 37 // 没有及时清理的计时器 38 setInterval(function () { 39 console.log('----') 40 }, 1000) 41 42 </script> 43 </body> 44 </html>