一、作为值的函数
function callSomeFunction(someFunction,someArgument){
return someFunction(someArgument);
}
//接受两个参数,第一个是个函数,第二个是要传递给函数的一个值
function callSomeFunction(someFunction,someArgument){
return someFunction(someArgument);
}
//接受两个参数,第一个是个函数,第二个是要传递给函数的一个值
function add10(num){
return num + 10;
}
var result1 = callSomeFunction(add10, 10);//20
alert(result1);
//callSomeFunction函数是一个通用的,不管add10传来是什么函数,都会返回第一个参数执行后的结果为20
二、函数内部属性
1、arguments是类数组对象,主要用途是保存函数参数
2、callee是一个指针,指向拥有这个arguments的对象的数组
var num = 2;
function factorial(num){
if(num <=1 ){
return 1;
}else{
return num * factorial(num-1);
}
}
function factorial(num){
if(num <=1 ){
return 1;
}else{
return num * arguments.callee(num-1);
}
}
var trueFactorial = factorial;
factorial = function(){
return 0;
};
alert(factorial(5));//0
alert(trueFactorial(5));//120