<!DOCTYPE html>
<html>
<head>
<meta charset="UTF-8">
<title>Insert title here</title>
<script type="text/javascript">
var r=10;
function test1(){
var r2="abc";
//alert(r)
}
//alert(r2);// Inside a function that cannot be accessed r2
test1();
//Okay in nested functions
function test2(num1){
function test3(num2,num3){
return num2+num3+num1;
}
return test3(10,20)
}
//alert(test2(30));
//-- closure in loop --
function testfun(){
var r=1;
var arr=[];
for(var x=0;x<3;x++){
r++;
arr[x]=function(){
return r;
}
}
return arr;
}
alert("testfun:"+testfun());
var arr2=testfun();
alert("arr:"+arr2[0]);
alert("arr:"+arr2[1]());
alert("arr:"+arr2[2]());
//========== ==== 4========== ========== =
</script>
</head>
<body>
</body>
</html>