js基础之函数

文章介绍了函数的概念,作为可重复使用的代码块,包括命名函数和匿名函数的定义方式。强调了函数命名应具有描述性,通常使用动词。讨论了函数参数的使用,如形参和实参的对应关系。还提到了`return`语句的作用,不仅结束函数执行,还可返回值。此外,文章还提及了`arguments`对象在不确定参数数量情况下的应用。

摘要生成于 C知道 ,由 DeepSeek-R1 满血版支持, 前往体验 >

1.函数是什么

 函数

            在我们编写代码时,经常性写的一个功能可以在很多地方使用(重复使用)

            那为了解决这个重复使用的代码,出现了函数包裹整个代码,进行重复使用

            函数就是封装了一段可以重复使用的代码。

            模块

            //  声明函数

                    1 自定义函数方式          因为它有自己的名字也叫命名函数

                            利用函数关键字 function自定义函数方式

                               语法 function fn (){

                                    }

                    2 函数表达式(匿名函数)

                                语法 var fn = function(){

                                     }

                声明函数特点:   function是关键词,必须要小写

            //  调用函数

                    fn()

                    调用: 调用时必须加(),以为函数本身不会执行代码,只有调用函数时才会执行

2.函数的命名

函数名最好是语义化的,函数是一个动态的,所以最好使用动词,函数名如果是多个单词组成,最好是驼峰命名

3.函数的参数及使用

 参数之间用逗号隔开

        形参:函数在定义时接收调用时的传入参数

        实参: 函数调用时传入的真实参数

                语法  function fn(形参,形参,.....){}

                      fn(实参,实参,...)

               

        注意:形参顺序是与实参传入的顺序一一对应

                如果没有传入实参时,定义了形参,那形参就是undefined

                // 如果实参个数小于形参,那多出来的形参就是undefined

                如果形参个事小于实参时,那只能拿到形参对应的实参值

 function getSum(a, b) {
            var sum = 0
            for (var i = a; i <= b; i++) {
                sum += i
            }
            // alert(sum)
            console.log(sum)
        }
        getSum(1, 10)
        getSum(10, 20)

4.return语句的使用

 return  和continue/break相似

                continue是跳出本次循环

                break是跳出整个循环

                return 不仅可以结束循环,还可以返回return语句中的值,还可以结束当前函数体内的代码

案列:

function fn() {
            console.log('你好')
            return
            console.log('不好')
        }
        fn()

使用:

<script>
        // function getSum(a, b) {
        //     var sum = 0
        //     for (var i = a; i <= b; i++) {
        //         sum += i
        //         return
        //     }
        //     // alert(sum)
        //     console.log(sum)
        // }
        // getSum(1, 10)
        // getSum(10, 20)
        // 函数中如果没有return值,打印函数会是undefined
        /*
                        function fn(){
        
                        }
                        console.log(fn())
        */
        // return 语句后面有返回值,会返回undefined
                // function fn() {
                //     return
                // }
                // console.log(fn())
        // 如果return后有一个返回值,就会返回这一个值
                // function fn() {
                //     return 1
                // }
                // console.log(fn())
        //如果return中返回多个以逗号隔开的值,会返回最后一个值 
                // function fn() {
                //     return 1,2,3
                // }
                // console.log(fn())
        // 如果return后面写的是数组,会返回数组
                function fn() {
                    return [1, 2, 3, 4]
                }
                console.log(fn())
    </script>

5.函数的arguments的使用

 <script>
        // arguments  是函数的内置对象,每个函数创建时都会有这个arguments
        // 场景: 当不知道会给函数传多少实参时,就没办法定义多个形参
        //          此时就可以使用arguments获取实参
        /* 
            arguments:是一个伪数组,可以拿到数组的索引,也可以拿到数组的length
                            没有数组的方法
        
        */
        function fn() {
            // console.log(a)
            // console.log(b)
            // console.log(c)
            // console.log(d)
            console.log(arguments)
            console.log(arguments[2])
            console.log(arguments.length)
        }
        fn(1, 2, 3, 4)

    </script>

6.函数之间的相互调用

-

<script>

        // 函数之间可以相互调用
        function fn1() {
            return 1 + 2
        }
        var a = fn1()
        function fn2(a) {
            return a + 2
        }
        var b = fn2(a)
        console.log(b)

        //  函数之间调用时,可以把a函数的变量放入b函数调用实参
        的变量中
        //   实惨名和形参名不一定非是一致时,不至于要一一对应
        function fn3() {
            var a = 1 + 2
            fn4(a)
        }
        fn3()
        function fn4(b) {
            console.log(b + 2)
        }
    </script>

评论 1
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值