闭包的记忆性

592 阅读1分钟

通过案例分析

通过函数的嵌套,使外层函数返回内层函数名,赋值给新变量,新变量再调用内层函数,但外层函数的形成所带值不会消失,仍然可以被内层函数变量使用。。。

这样虽然在外部调用内层函数,但外层变量值仍可以使用。形成闭包现象,也就是闭包的记忆性。

<!DOCTYPE html>
<html lang="en">
<head>
    <meta charset="UTF-8">
    <meta http-equiv="X-UA-Compatible" content="IE=edge">
    <meta name="viewport" content="width=device-width, initial-scale=1.0">
    <title>Document</title>
    <script>
        function createCheckTemp(standardTemp) {  
            function checkTemp(n) {
                 if(n <=standardTemp){
                    alert('你的体温正常');
                }
                else {
                    alert('你的体温偏高');
                }
            }
           return checkTemp;
        }
        var checkTemp_A = createCheckTemp(37.1);
        var checkTemp_B = createCheckTemp(37.3);
        checkTemp_A(37.2);
        checkTemp_B(37.2)
    </script>
</head>
<body>  
</body>
</html>