js函数的使用和声明

Posted by xiongmao; tagged with js函数 , js函数的返回值 , arguments的使用 , js函数的调佣 , js函数的声明

导读:

认识js函数

 函数:是做某件或者实现某种功能
            关键字:function 函数名(){}
        使用函数必须调用函数,否则不会输出结果

 function getSum(){
       console.log('这是第一次使用函数');
        }
        getSum();

        // 利用函数求1-100的和
        var sum = 0;
        function getSum(){
            for(var i =1; i<=100; i++){
                sum +=i;
            }
            console.log(sum);
        }
        getSum();        

{lamp/}

函数的参数

函数的参数
    形参:定义的函数括号里边的为形参   形参默认值为undefined 输出结果为NaN
    实参:调用函数括号里边的为实参
        function getSum1(形参1,形参2){

            }
          getSum1(实参1,实参2);
          
注意:
     1.如果实参的个数和形参个数一致,则正常输出结果
     2.如果实参的个数多余形参的个数,会取到形参的个数
     3.如果实参的个数小于形参,多余的形参定位为undefined,最终结果就是NaN
     4.形参可以看做是不同声明的变量,声明变量没有接收值就是undefined
     5.建议 我们尽量让实参个数和形参相匹配                
         
        // 列子1  求任意两个数的和
/*         function getSum2(num1,num2){
            console.log(sum1 + sum2);
        }
        getSum2(5,10); */

 // 例子2:求任意两个数之间的和
        var sum = 0;
        function getSum3(num3,num4){
            for(var i = num3; i<=num4; i++){
                sum +=i;
            }
            console.log(sum);
        }
        getSum3(1,100);

函数的返回值

 函数的返回值格式
      function 函数名(){
           return 需要返回的结果;
          }
        函数名();
        
1. 我们函数只是实现某种功能,最终的结果需要返回值的调用者函数名 ,通过return实现
2. 只要函数遇到return 就把后面的结果 返回给函数值 函数名() = return 后面的结果

3. 代码验证       
       function getResult(){
           return 66;
       }
       getResult(); //getResult()  = 66
       console.log(getResult());
       // 例子 求任意两个数的和
       function getSum(num1,num2){
            return num1 + num2;
       }
       console.log(getSum(1,2));


// 例子2 求两个数的最大值
       function getMax(num3,num4){
            if(num3 > num4){
                return num3;
           }else{
               return num4;
           }
//方法二
           return num3 > num4 ? num3 : num4;
       } 

       console.log(getMax(1,5));
       console.log(getMax(2,6));

例子3 求数组的最大值
       function getArrMax(arr){
           var max = arr[0];
           for(var i = 1; i<= arr.length; i++){
                if(arr[i] > arr[0]){
                    max = arr[i]
                }
           }
           return max;
       }
       var maxRulest = getArrMax([1,2,10,3,65,27,100]);
       console.log(maxRulest);

注意:
  1.当出现return 时,后边出现的语句不在执行
  2.当return 有多个返回值时,只会返回最后一个值
  3.当函数没有数据时返回unidentified
     

break,continue,return的区别

      break : 结束当前的循环体
      continue:跳出本次循环,继续执行下次循环
      return: 不仅可以退出循环,还能够返回return 语句中的值,同时还可以
      结束当前的函数体内的代码

{lamp/}

函数中arguments的使用

arguments 的使用 只有函数才有arguments对象 而且每个函数都内置好了这个arguments
        function fh(){
        //  console.log(arguments); //里面存储了所有传递过来的实参 arguments = [1,2,3]
            // console.log(arguments.length);
            //console.log(arguments[2]);
            // 我们可以按照数组的方式遍历arguments
            for(var i = 0;i < arguments.length;i++){
                console.log(argumennts[i]);
            }
        }
        fn(1,2,3);
        fn(1,2,3,4,5);
        
伪数组 并不是真正意义上的数组
   1.具有数组的 lenght 属性
   2. 按照索引的方式进行存储
   3.它没有真正数组的些方法 pop()  push() 等等


利用函数求任意个数的最大值
        function fn() {
            var max = arguments[0];
            for(var i=1; i < arguments.length; i++){
                if(arguments[i] > max){
                    max = arguments[i];
                }
            }
            return max;
        }
        console.log(fn(1,10,20,3,100,200));
        console.log(fn(1,10,20,3,100,300));

{lamp/}

函数的调用

        /*用户输入年份,来判断2月是否为闰年来返回天数*/
        function backDay() {
            var year = prompt('请输入要查询的年份:');
            if(isRunYear(year)){
                alert('当前年份为闰年2月为29天');
            }else{
                alert('当前年份为平年2月为28天');
            }
        }
        backDay();

        function isRunYear(year){
            var flag = false;
            if(year % 4 == 0 && year % 100 != 0 || year % 400 ==0){
                flag = true;
            }
            return flag;
        }

{lamp/}

函数的两种声明

 函数的两种声明方式
        1.利用函数关键字自定义函数(命名函数)
        function fn(){

        }
        fn();
        
2.函数表达式(匿名函数)
  var 变量名 = function(){};
        var fun = function(aru){
            console.log('我是函数表达式');
            console.log(aru);
        }
        fun('123');
        
注意:        
   1.fun是变量 不是函数名
   2.函数表达式声明方式跟声明变量差不多,只不过变量里面存的是值,而函数表达式里面存的是函数
   3.函数表达式也可以进行传递参数

2021-12-20 20:51:08 星期一