js中内存泄漏与内存溢出

news/2024/11/6 7:26:39/

内存泄漏:

        占用的内存没有及时的释放从而失去控制,从而造成内存的浪费。内存泄漏多了就容易引发内存溢出。

        常见的造成内存泄漏的原因:             

                (1)没有清除闭包

// 函数执行完后, 函数内的局部变量没有释放, 占用内存时间会变长,容易造成内存泄露
function fun() {var a = 5function getA() {return a}return getA
}
var f = fun()
f() // 5
// f = null     让内部函数成为垃圾对象,释放闭包

                (2)意外的全局变量


function fn() {var name = '张三'var age = 18address = '上海'    // 没有用var定义,这时候address是全局的
}
fn()    // 因为address会被变量提升到了全局变量,fn调用完成后address还保留在内存中

                (3)没有清除dom元素的引用

var dom = document.getElementById('box')
document.body.removeChild(dom)  // dom删除后,下面依然能打印出整个div
console.log(dom)    // <div id="box">嘿嘿嘿</div>
dom = null
console.log(dom)    // 释放资源,解除引用

                (4)没有及时清除定时器

// 没有及时清理定时器
var timer = setInterval(() => {console.log(new Date())
}, 1000);
// clearInterval(timer) 及时清理定时器

                (5)addEventListener

监听事件的解除,监听的时候addEventListener,在不监听的时候要使用removeEventListener。

内存溢出:

        从字⾯意思看,就是程序⽬前需要的内存⼤于机器⽬前所能提供的内存,从⽽导致程序抛出内存溢出的错误信息


http://www.ppmy.cn/news/232290.html

相关文章

AutoJS解锁手机屏幕

在脚本运行过程中经常碰到手机息屏导致脚本无法正常运行&#xff0c;这时就需要点亮屏幕&#xff0c;这次的教程主要就是教大家如何用AutoJS自动解锁手机。 以下是代码部分&#xff0c;这次的代码相对而言比较简单&#xff0c;判断手机是否处于息屏状态&#xff0c;如果是的话唤…

回收手机一般用什么软件测试,做二手手机回收的是用的什么检测软件?

检测软件只是用来检测您手机的配置、性能、运行等进行一个跑分的。 无闪现即加电开机后&#xff0c;能听到开机铃音、按键布景灯亮、闪现屏布景灯亮&#xff0c;但屏幕没有任何闪现内容&#xff1b;黑屏即加电开机后&#xff0c;能听到开机铃音、按键布景灯亮&#xff0c;但闪现…

安卓手机有坏点测试软件,检测手机屏幕是否有坏点的方法分享 怎么检测手机屏幕坏点...

如果发现手机屏幕有问题&#xff0c;比如坏点?那么手机屏幕坏点怎么检测?屏幕坏点检测既可以下载专门的坏点检测软件进行检测&#xff0c;也可以用最简单的方法使用纯色图片进行测试。如果你很认真&#xff0c;还可以使用放大镜之类的工具对结果进行验证。 方法/步骤 第一步&…

手机坏点如何测试软件,怎么检测手机屏幕坏点

如果发现手机屏幕有问题&#xff0c;比如坏点&#xff1f;那么手机屏幕坏点怎么检测&#xff1f;屏幕坏点检测既可以下载专门的坏点检测软件进行检测&#xff0c;也可以用最简单的方法使用纯色图片进行测试。如果你很认真&#xff0c;还可以使用放大镜之类的工具对结果进行验证…

手机屏幕测试html5,手机屏幕坏点怎么检测

手机屏幕坏点怎么检测 如果发现手机屏幕有问题&#xff0c;比如坏点?那么手机屏幕坏点怎么检测?屏幕坏点检测既可以下载专门的坏点检测软件进行检测&#xff0c;也可以用最简单的方法使用纯色图片进行测试。如果你很认真&#xff0c;还可以使用放大镜之类的工具对结果进行验证…

【内存泄漏和内存溢出】JavaScript之深入浅出理解内存泄漏和内存溢出

&#x1f4d2; 博客首页&#xff1a;✎﹏ℳ๓敬坤的博客 &#x1f388; &#x1f60a; 我只是一个代码的搬运工 &#x1f383; &#x1f389; 欢迎来访的读者关注、点赞和收藏 &#x1f91e; &#x1f609; 有问题可以私信交流 &#x1f606; &#x1f4c3; 文章标题&#xff1…

手机屏幕解析

手机屏幕解析 最近有买手机的欲望&#xff0c;于是对市面上主流手机屏幕研究了一番。知识属于大家&#xff0c;不敢独享&#xff0c;在此进行分享。 目前市面上主流手机屏幕有&#xff1a;TFT、OLED 、AMOLED、SUPER AMOLED、IPS 。下面我们来一一讲述。 TFT&#xff08;Thin …

手机屏幕原理和设计(触摸屏幕)

//本文参考了很多百度百科的知识  随着android手机的流行&#xff0c;手机触摸屏成为一个时尚。再购机的时候&#xff0c;就会有很多人去问手机的触屏是电阻式的还是电容式的呢&#xff1f;但是其实很多人应该是不知道个中的原委的。只是一个感觉电容式的一定要比电阻式的好。…