87,910
社区成员
发帖
与我相关
我的任务
分享
<html>
<head>
<script src="TestClosure.js" type="text/javascript"></script>
<script type="text/javascript">
</script>
</head>
<body>
<input id="btnTest1" onclick='Action1()' type="button" value="利用闭包累加" />
<span id="lblScore">0</span>
</body>
</html>
function Test1(){
var i=0;
function child(){
var _lblScore=document.getElementById('lblScore')
_lblScore.innerHTML=++i;
}
return child;
}
var Action1 = Test1();
//注意,Test1并没有被释放,局部变量i在不停的累加
//闭包创建的步骤:
//1.Test1嵌套child;
//2.child引用Test1的变量;
//3.从Test1的外部引用child
var i = 0;
function test(){
document.getElementById('lblScore').innerHTML=++i;
}