美文网首页
2、垃圾回收与上下文引用

2、垃圾回收与上下文引用

作者: 1璐有你 | 来源:发表于2020-03-02 00:01 被阅读0次
    let config = {
        alert: setInterval(() => {
            console.log('alert')
        }, 1000)
    }
    
    config = null
    

    答案:

    setInterval 的回调仍然每秒都会被调用一次

    解析:

    一般情况下,将对象赋值为 null,那些对象将被垃圾回收(garbage collected),简称 GC,因为没有对对象的引用了。

    垃圾回收: 用引用计数的方式进行

    然而,此题中 config 对象中的 setInterval 的回调是箭头函数,所以他的上下文环境绑定到了 config 上,回调函数仍然保留着对 config 的引用,因此 config 不会被垃圾回收。

    PS:此题出自<<高级前端面试>>小程序,可前往学习。

    相关文章

      网友评论

          本文标题:2、垃圾回收与上下文引用

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