• Js arguments.callee();函数自己调用自己


    1.阶乘的时候,函数一般要用到递归算法,所以函数内部一定会调用自身

    //递归,阶乘
    function sum(num){
        if (num<=1) {
            return 1;
        } else{
            return num*sum(num-1);   //自己调用自己,递归
        }
    }
    alert(sum(4));

    2.如果函数名一旦发生改名,所需要跟着一起修改不仅仅是在调用的时候,在内部递归的时候也会跟着一起修改,如果在函数内部有很多此递归,这时修改起来就很麻烦,如果有一个地方没修改,其结果都会出错,这时候就用到arguments.calle(),递归,自己调用自己

    function box(num){
        if (num<=1) {
            return 1;
        }else{
            return num*arguments.callee(num-1);
        }
    }
    alert(box(4));  //其结果和上面的一样
  • 相关阅读:
    线程
    自定义异常
    throw 子句
    throw 语句
    异常处理
    异常处理
    匿名类
    接口的使用,内部类
    接口,接口的定义
    如何理解无偏估计?无偏估计有什么用?什么是无偏估计?
  • 原文地址:https://www.cnblogs.com/xiaoxinzi/p/8513614.html
Copyright © 2020-2023  润新知