函数

一、作为值的函数

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

  

原文地址:https://www.cnblogs.com/shenq/p/5151798.html