JavaScript学习记录总结,六——js函数闭包特性

<script type="text/javascript">

function arrdemo(){

var arr=["hello","text","java"];

for(var i=0;i<arr.length;i++){

arr[i]=function(){

alert(i);

};

}

return arr;

}

var arr=arrdemo();

arr[0](); //3

arr[1](); //3

arr[2](); //3

</script>

<script type="text/javascript">

function arrdemo(){

var arr=["hello","text","java"];

for(var i=0;i<arr.length;i++){

arr[i]=iteratorI(i);

}

function iteratorI(j){

alert(j);

};

return arr;

}

var arr=arrdemo();

arr[0](); //0

arr[1](); //1

arr[2](); //2

</script>

<script type="text/javascript">

function arrdemo(){

var arr=["hello","text","java"];

for(var i=0;i<arr.length;i++){

arr[i]=function (i){

alert("i="+i);

};

}

return arr;

}

var arr=arrdemo();

arr[0](3); //i=3

arr[1](5); //i=5

arr[2](7); //i=7

</script>