手记

js函数闭包小栗子....

<!DOCTYPE html>
<html lang="en">
<head>
    <meta charset="UTF-8">
    <title></title>
</head>
<body>
    <script type="text/javascript" charset="utf-8">
        //函数 a 有一个私有变量 p 和一个内部函数 innerA
        function a() {                      //外部闭包域 ,一个名为 a 的 Function 对象
            var p = 0;                      //私有变量 p
            var innerA = function () {      //内部闭包域 ,一个名为 innerA 的 Function 对象
                alert(p);      //对外部闭包域的私有变量进行了引用,故 innerA 对象的 function scope 会产生一个名为 closure 的对象属性,closure 对象内含有一个名为 p 的引用
            }

            console.log(innerA.prototype);
            innerA();//输出0
            p++;
            innerA();//输出1
        }
        a();
    </script>
</body>
</html>
3人推荐
随时随地看视频
慕课网APP