通过函数内径的arguments数组,实现参数之间的累加 function allSum(){ var i,res =0; var paramsLength = arguments.length; for(i=0;i 回调函数 function multiplyByTwo(a,b,c,callback){ var i,ar =[]; for(i=0;i3;i++){ ar[i] = c
function allSum(){
var i,res =0;
var paramsLength = arguments.length;
for(i=0;i
回调函数
function multiplyByTwo(a,b,c,callback){
var i,ar =[];
for(i=0;i<3;i++){
ar[i] = callback(arguments[i]*2);
}
return ar;
}
function addOne(a){
return a+1;
}
var myarr = multiplyByTwo(1,2,3,addOne);
console.log(myarr);
匿名函数的优缺点
匿名函数的好处是不会产生任何全局变量,当然缺点是这样的函数是无法重复执行的(除非放到某个循环或其他函数中)
获取for循环里面的i的值
1.// 使用自执行函数获取i的值
function f(){
var a =[];
for(var i=0;i<3;i++){
a[i] = (function(x){
return function(){
return x;
}
})(i);
}
return a;
}
2// 闭包获取变量的值
function f(){
function makeClosure(x){
return function(){
return x;
}
return x;
}
var a = [];
var i;
for(i=0;i<3;i++){
a[i] = makeClosure(i);
}
return a;
}
迭代器
function setup(x){
var i=0;
return function(){
return x[i++];
};
}
var next = setup(['a','b','c']);
