javascript学习全过程-----js学习笔记(4)------函数(上)

**

javascript学习全过程-----js学习笔记目录

**

函数

概念:

==>对于js来说,就是任意一段代码放在一个盒子里面.

==>在我想要让这段代码执行的时候,直接执行这个盒子里面的代码就可以

函数的两个阶段(重点)

一.定义阶段 

定义方式:(声明式和赋值式)

声明式:

      ==>使用function这个关键字来声明一个函数

      ==>语法:

            function fn(){

                //一段代码

              }

赋值式:

==>就是和我们使用var关键字是一个道理

 ==>首先使用var定义一个变量,把一个函数当做值直接赋值给这个变量就可以了

 ==>语法:

              var fn = function(){

                      //一段代码

             }

            //不需要在function后面书写名字了,因为在前面已经有了,此时的变量名就是函数名

二.函数调用阶段

调用一个函数:

         ==>函数调用就是直接写:函数名() 就可以了

两种函数定义方式调用上的区别:

==>声明式函数:调用可以在定义之前或者之后

==>赋值式函数:调用只能在定义之后

实例:

        //调用函数
        s1();
        //声明式
        function s1(){
            //要执行的代码
            console.log('我是函数s1里面的代码')
        }
        

        //赋值式
        //前面调用函数会报错:fn is not a function
        // fn();
        var fn = function(){
            //要执行的代码
            console.log('我是函数fn里面的代码')
        }
        //调用函数
        fn();

 

函数的参数(形参与实参)

==>我们在定义函数和调用函数的时候都出现一个()

==>就是用来放参数的

                ==>参数分为两种:形参和实参

                ==>声明式

                        function fn(形参写在这里){

                            //一段代码

                        }

                        fn(实参写在这里)

                 ==>赋值式

                        var fn = function(形参写在这里){

                            //一段代码

                        }

                        fn(实参写在这里)

形参与实参的作用

一.形参

==>就是在函数内部可以使用的变量,在函数外部不能使用

==>每写一个单词,就相当于在函数内部定义了一个可以使用的变量(变量名要遵循命名规则)

==>多个单词之间用 , 隔开

==>如果只有形参的话,那么在函数内部使用的每个变量是没有值的,就是undefined;

==>形参的值是在函数调用的时候由实参决定的

二.实参

==>在函数调用的时候给形参赋值的

==>也就是说,在调用的时候是给一个实际的内容的      

==>函数内部的形参的值,由函数调用的时候传递的实参决定的

==>多个参数的时候是按照顺序一一对应的 

三.参数个数的关系

 ==>形参比实参少

         -->因为是按照顺序一一对应的

         -->形参少就会有拿不到实参给的值,所有在函数内部就没有办法用到这个值

==>形参比实参多 

        -->因为是按照顺序一一对应的 

        -->所以多出来的形参就是没有值的,就是undefined   

==>实参在函数调用的时候一一对应赋值给形参

实例:

      //编写一个函数,计算两个数的和差积商   
      function calc(num1,num2,sign){
            // var sign = "*";//"+","-","/","*";
            switch(sign){
                case "+":
                    console.log(num1+"+"+num2+"="+(num1+num2));
                    break;
                case "-":
                    console.log(num1+"-"+num2+"="+(num1-num2));
                    break;
                case "*":
                    console.log(num1+"*"+num2+"="+(num1*num2));
                    break;
                case "/":
                    console.log(num1+"/"+num2+"="+(num1/num2));
                    break;    
            }
        }
        //调用函数
        calc(10,24,"-")
        //调用函数
        calc(100,25,"/")

 

函数的return(重点)

return 返回的意思,这个关键字就是给函数一个返回值和终断函数

       ==>终断函数

                ==>当我开始执行函数以后,函数内部的代码会至上而下执行

                ==>必须要等到函数内部的代码执行完毕

                ==>而return关键字就是可以在函数中间的位置停掉,让后面的代码不再继续执行

                ==>一个函数里面只有一个return起作用.

        //终断函数
        function fn(){
            console.log('1')
            console.log('2');
            //return在此处终止代码,后面不会再执行了;
            return;
            console.log('3')
            console.log('4');
            console.log('5')
        }
        fn();

       ==>返回值

                    ==>函数调用本身也是一个表达式,表达式就应该有一个值出现

                    ==>什么是表达式:操作数和运算符组合成的

                    ==>1+2

                    ==>1||2

                    ==>!"hello"

                ==>现在的函数执行完毕以后,是不会有结果出现的

                ==>return关键字就是可以给函数执行完毕以后一个结果

                ==>我们可以在函数内部使用return关键字把任何内容当做这个函数的运行后的结果

        //返回值
        function sum(a,b){
            console.log(a+b);
            return 10;
        }
        //通过sum(2,3)调用sum函数,也就是把里面代码执行一遍,然后,把函数执行完以后的结果,赋值给aa;
        var aa = sum(2,3)//aa==10

 

 

你可能感兴趣的:(JavaScript,javascript)