美文网首页
JavaScript函数 Day2

JavaScript函数 Day2

作者: _Enco_ | 来源:发表于2017-06-30 16:56 被阅读0次

    函数

    • 变量提升和函数提升
    //function 提升(在var之前)
    //var 变量提升
    fn(); //会打出666,因为function提升到代码块最前面。
    function fu(){
      alert(666);
    };
    // console.log(c); 控制台报错,因为c没有声明。
    console.log(a); //控制台打印 undefined ,表示a空间已经声明未赋值。
    var a = 10; //var 声明a这个变量空间会提升到代码块最前面。
    
    • 函数实现累加、阶乘(函数的自调用)
    <script type="text/javascript">
          function fm(num){
            if(num>0){
              return num+fm(num-1);
            }
            else{
              return num;
            }
          }
          console.log(fm(4));
        </script>
    
    <script type="text/javascript">
          function fm(num){
            if(num>1){
              return num*fm(num-1);
            }
            else{
              return num;
            }
          }
          console.log(fm(3));
        </script>
    

    return

    • 返回值
    • 遇到return就结束函数,无论后面是否还有代码。

    作业

    • 阶乘 加减
    • 多参和
    • 3d彩票
    • 2a^2+20 前十项和 fn(10)

    形参和实参

    function fn(num1,num2){
    //var num1;
    //var num2;
      console.log(num1);
      console.log(num2);
    }
    fn(10); //不报错,显示10 undefined
    
    • arguments[ ] 实参对象
    function fn(num1,num2){
      console.log(arguments[0]);
      console.log(arguments[1]);
      console.log(arguments[2]);
    }
    fn(10,20,30); //可以输出三个值,不会报错,如果没有第三个参数,arguments[2]输出undefined
    
    • arguments.callee用法
    (function(n){
       if(n > 1)      
        return n* arguments.callee(n-1); //函数中调用自己
       return n;
    })(10); //匿名函数实现阶乘
    

    相关文章

      网友评论

          本文标题:JavaScript函数 Day2

          本文链接:https://www.haomeiwen.com/subject/vfnvcxtx.html