您好,欢迎来到微智科技网。
搜索
您的当前位置:首页栈内存的销毁

栈内存的销毁

来源:微智科技网
<!DOCTYPE html>
<html lang="en">
<head>
    <meta charset="UTF-8">
    <title>Title</title>
</head>
<body>
<script>
    // 栈内存: 作用域都是栈内存;
    // 栈内存的回收伴随着作用域的销毁;
    // 栈内存的回收
    // 全局作用域一旦销毁,全局作用域所提供的环境以及存储的基本数据类型值都会随之销毁;
    //var a = 1;
    // 1. 全局作用域一个页面只有一个;属于不销毁的作用域;
    // 当关闭当前页面或者关闭浏览器,全局作用域就会随着销毁;

     
    // 立即销毁作用域
    /*function fn() {
        console.log(10);
    }
    for (var i = 0; i < 1000; i++) {
        fn();
    }*/

    /*var t = 10;
    function fn() {
        // 形成作用域
        var t = 100;
        return function () {
            console.log(t);// 100
        }
    }
    fn();
    var f = fn();// f 占用了fn的返回值;占用了fn执行return出小函数的空间地址;
    f();*/// 当f执行时,会输出结果100;说明fn所形成的作用域没有销毁;
    // 不销毁作用域需要满足的条件:
    //1. 函数需要return一个引用的数据类型
    //2. 函数返回值要被外界接收

    // 3.不立即销毁的作用域

    var t = 10;
    function fn() {
        var t = 100;
        return function () {
            console.log(t);// 100
        }
    }
    fn()();
    // 这样的作用域不立即销毁,会等到里面的小函数执行完成之后,然后立即销毁;
</script>
</body>
</html>
复制代码

因篇幅问题不能全部显示,请点此查看更多更全内容

Copyright © 2019- 7swz.com 版权所有 赣ICP备2024042798号-8

违法及侵权请联系:TEL:199 18 7713 E-MAIL:2724546146@qq.com

本站由北京市万商天勤律师事务所王兴未律师提供法律服务