JS函数

一、函数的理论知识

1.什么是函数

        函数就是封装了一段可被重复调用执行的代码块,目的就是让大量代码重复使用

2.理解

        将需要的程序,封装定义在一个 函数 里

        通过 调用函数 调用 对应的程序

3.优点

        封装定义一次 可以 多次调用,减少冗余的代码

        有更好的 可操作性 和 可维护性

二、函数的使用

分为两步:声明函数 和 调用函数

1.声明函数

    通过关键字 function 声明

//声明式函数
function 函数名称() {
     函数体;
}

//赋值式函数/匿名函数
//使用变量名称 作为 函数名称
var 变量 = function(){}  

2.调用函数

//声明式函数 和 赋值式函数 调用语法式完全相同的
//调用方式:
函数名称();
变量名称();

3.举例

//声明式函数
function person() {
    console.log('王昭没有君啊');
}

//调用:
person();
//赋值式函数
var lastPerson = function() {
    console.log('王昭没有君啊');
}
lastPerson();

执行结果:

三、函数的参数

1.参数

概念:

      函数执行时,函数程序和程序员友好交流沟通的方式

理解:

      函数执行时,外部输入的数据

function(形参1,形参2,...) {

}

函数名(实参1,实参2,...);

形参:

    定义在函数封装时 函数()中的 内容,可以是一个或多个,也可以没有

    本质上 是定义在一个变量 ,只需要定义函数名称

    函数会自动执行 声明定义变量,默认只是声明变量没有对变量赋值

    没有正确赋值的变量,默认存储数据 underfined 

实参:

    定义在函数调用时 函数()中的 数据,可以是一个或多个,也可以没有

    本质上 是将 数据数值 赋值给 形参存储

2.形参和实参的执行过程

//在定义形参时,也可以同时给形参赋值默认值
//也就是sex这个形参在声明定义时,默认值是 男
//如果sex 没有赋值 形参sex 存储使用 默认值 男
//如果sex 执行赋值 形参sex 存储赋值的是实参数据
//因为实参的赋值顺序,带默认值得形参 一般定义在函数参数的末尾
function person(name,age,sex = '男') {//形参是接收实参的 name = '荒天帝' 形参类似于一个变量
    console.log(name);
    console.log(age);
    console.log(sex);
}
person('荒天帝',30);//实参

执行结果:

四、函数的返回值

通过 关键词 return 定义的 抛出函数封装之外的数据数值

1.函数的返回值格式:

        function 函数名(){

            return 需要返回的结果;

        }

函数名();

  1.函数只是实现某种功能,最终的结果需要返回给函数的调用者 函数名() 通过return 实现的

  2.只要函数遇到return 就把后面的结果 返回给函数的调用者 函数名() = return后面的结果

2.return的作用:

          1.终止函数程序的执行,return后面的代码不执行

          2.返回值

3.案例

function person(name,age,sex) {
    
    //console.log() 是函数程序的一部分
    //是调用函数程序 函数程序执行后的效果
    //不是函数程序的 执行结果 返回值
    console.log(name);
    console.log(age);
    console.log(sex);
}
var res = person('荒天帝',30,'男');
//没有 return 返回值,结果就是undefined
console.log(res);

执行结果:

没有 return定义 执行结果返回值的函数,调用执行函数的结果 都是 undefined,那么我们就来定义一个return 返回值,看看函数的执行效果

function person(name, age, sex) {

      console.log(name);
      console.log(age);
      console.log(sex);

      return `${name},${age},${sex}`;
}

var res = person('荒天帝', 30, '男');
console.log(res);

本图文内容来源于网友网络收集整理提供,作为学习参考使用,版权属于原作者。
THE END
分享
二维码
< <上一篇
下一篇>>