美文网首页
Javascript的垃圾回收机制

Javascript的垃圾回收机制

作者: SailingBytes | 来源:发表于2018-05-25 12:02 被阅读0次

为避免内存泄露,JavaScript 具有垃圾收集机制。

内存泄漏:指由于疏忽或错误造成程序未能释放已经不再使用的内存。一直占用内存,造成物理内存溢出。

垃圾收集机制:指管理代码执行过程中使用的内存,找出那些不在继续使用的变量,然后释放其内存。但是这个过程不是实时的,因为其开销比较大,所以垃圾回收器会按照固定的时间间隔周期性的执行。

具体体现

函数内部的局部变量,待该函数执行完毕,执行过程中所造成的内存将被释放。

全局变量直到浏览器卸载页面才会被释放内存。

闭包中由于内部函数的原因,外部函数并不能算是结束。

标记清除

垃圾回收器在运行时候会给储存在内存中的所有变量都加上标记。然后,它会去掉环境中的变量以及被环境中的变量引用的变量的标记(闭包)。

余下的变量将被视为准备删除的变量(原因:环境中的变量已经无法访问这些变量了)。

最后,垃圾回收器完成内存清除工作,销毁那些带标记的值并回收它们所占用的内存空间。

如何优化内存分配?

全局变量只保存必要的数据;

若无必要保存数据,采用局部变量存储;

一旦数据不再有用,最好将值设置为 null(解除引用)。

相关文章

  • 垃圾回收机制

    垃圾回收机制—GC Javascript具有自动垃圾回收机制(GC:Garbage Collecation),也就...

  • JS 的垃圾回收机制与内存管理

    垃圾回收机制 Javascript具有自动垃圾回收机制(GC:Garbage Collecation),也就是说,...

  • JavaScript中的垃圾收集

    JavaScript具有自动垃圾回收机制,垃圾回收机制会按照固定的时间间隔周期性地执行这一操作,垃圾回收机制必须跟...

  • JavaScript垃圾回收机制

    什么是垃圾回收机制? 和java,c#一样,javascript也有垃圾回收的机制,比如说c++和c就没有垃圾回收...

  • 2018-10-13

    浅谈浏览器的垃圾回收机制和内存泄露 JavaScript使用垃圾回收机制来自动管理内存。 JS的回收机制分两种:1...

  • JavaScript中的垃圾回收

    垃圾回收概述 JavaScript具有垃圾自动回收机制 原理是:找出不再使用的变量,释放其内存空间,为此垃圾回收器...

  • JS_垃圾回收机制

    JavaScirpt垃圾回收机制 JavaScript具有自动垃圾回收机制,也就是说,执行环境会负责管理代码执行过...

  • javascript中的内存泄漏

    垃圾回收机制 JavaScript具有自动垃圾回收机制,来判断哪些变量不再需要,释放他所占的内存。 1. 变量的生...

  • JavaScript的垃圾回收机制

    JavaScript采用的垃圾回收机制是标记扫描算法(Mark-and-sweep algorithm),它会回收...

  • javascript垃圾回收与内存泄漏

    垃圾回收机制 自动垃圾收集机制 javascript具有自动垃圾收集机制,也就是说,执行环境会负责管理代码执行过程...

网友评论

      本文标题:Javascript的垃圾回收机制

      本文链接:https://www.haomeiwen.com/subject/zcpyjftx.html