javascript 小结

1.闭包
function test(){
var num=100;
function a(){
num ++;
console.log(num);
}
function b(){
num --;
console.log(num);
}
return [a,b];
}
var myArr=test();
myArr[0](); //请写出输出什么?101
myArr[1](); //请写出输出什么?100

2.立即执行函数:输出什么?a
(function test(){
console.log('a');
}())


3.输出10个10,闭包的作用,i=10
function test(){
var arr=[];
for(var i=0;i<10;i++){
arr[i]=function(){
document.write(i+" ");
}
}
return arr;
}

var myarr=test();
for(var j=0;j<10;j++){
myarr[j](); //输出10个10,闭包的作用,i=10
}

4.输出10个0--9,闭包的作用,立即执行函数的作用,i=0-9
function test(){
var arr=[];
for(var i=0;i<10;i++){
(function(j){
arr[j]=function(){
document.write(j + " ");
}
}(i));
}
return arr;
}

var myarr=test();
for(var j=0;j<10;j++){
myarr[j](); //输出10个10,闭包的作用,i=10
}

猜你喜欢

转载自www.cnblogs.com/csj007523/p/12449697.html
今日推荐