菁英数字科技(猩码)-猩码学苑-专注软件开发人才菁英教育

标题: 函数 闫鹏波 20230227 [打印本页]

作者: mx60075    时间: 2023-2-28 23:46
标题: 函数 闫鹏波 20230227
JS函数
    函数的概念
        在JS中,我们可能会定义非常多的功能相同的代码,虽然for循环也能实现一些简单的重复操作,但是很有局限性,所以要用到JS中的函数
        函数:就是封装了一段可以被重复调用执行的代码块。
    函数的使用
         声明函数
            声明的语法
            function是声明函数的关键字,必须要小写
            因为函数一般都是为了实现某一个功能的,所以通常函数名应该是动词,比如getSum。
        调用函数            
            注意点:
                1、调用函数时,要在函数名后加小括号
                2、函数不调用不执行(声明函数本身并不会执行代码,只有调用时才会执行)

    函数的封装
        概念
            函数的封装是将一个或者多个功能通过函数的方式封装起来,对外只提供一个简单的入口(函数接口)。   
    函数的参数
        形参和实参
            形参:就是形式上的参数,函数定义的时候,传递的参数,但是在定义的时候,形参的值是不确定的。
            实参:实际上的参数,函数调用的时候传递的参数,实参的值是传递给形参的。
            参数的作用:在函数内部某些值不确定,我们可以通过参数在调用函数时进行传递。
        基本语法        
        形参和实参的匹配问题            
            总结
                1、函数可以带参数,也可以不带参数
                2、函数声明的时候括号里的是形参,形参的默认值是undefined
                3、调用函数的时候,括号里的是实参
                4、定义多个参数的时候要用逗号隔开
                5、形参的个数尽量和实参匹配,如果不匹配会出现无法预料的结果

    函数的返回值
        return语句
            有时候我们希望函数将值返回给调用者,可以使用return来实现。           
                注意点
                    如果函数没有return,最终的返回结果是undefined
                    return会终止函数,不会执行return后面的代码,并且会将return后的值返回给函数
                    return只能返回一个值,如果返回的多个值用逗号隔开,就以最后一个值为准。
                    如果要返回多个值,那么就将这些值放在一个数组中一次性返回

    arguments的使用
        概念
            当我们不确定有多少个参数传递的时候 ,可以使用arguments来获取,它实际上是一个内置对象,所有的函数都内置一个arguments对象,它存储了传递的所有实参。
            arguments展示形式是一个伪数组,因为是可以进行遍历的。具有以下特点:
                具有length属性
                可以按照索引的方式获取或者存储数据
                不具有数组的push、pop等方法         
    函数之间的调用      
    函数的自调用        
    函数的递归调用      
    函数的声明方式
        命名函数
            function fn() {// 函数体}
                因为这个函数有名字,所以叫做命名函数
                调用函数的代码可以放到声明函数的前面,也可以放到声明函数的后面
        匿名函数
            var fn = function() {// 函数体};
            因为函数没有名字,所以被叫做匿名函数
            fn是变量名,里面存放了一个函数
            函数调用必须要写到函数体后面
    变量的作用域
        全局变量
            在全局中都可以使用,如果在函数中只给变量赋值而没有声明,那么这个变量就是全局变量
        局部变量
            局部变量只能在函数内部进行使用,外部不能用        
    作用域链
        当有多个变量名相同时,采用就近原则,选择距离最近的变量进行使用。        
    JS的预解析
        JS引擎运行代码分为两步
            1、JS预解析
            2、从上到下顺序执行
            JS引擎会将JS里面所有的var 还有function提升到当前作用域的最前面        
            变量预解析:只提升变量的声明到当前作用域的最前面,不提升赋值操作
            函数的预解析:将所有的函数声明提升到当前作用域的最前面,但是不进行调用操作。
            特例:匿名函数的解析               






欢迎光临 菁英数字科技(猩码)-猩码学苑-专注软件开发人才菁英教育 (http://www.xingmaxueyuan.com/) Powered by Discuz! X3.4