js基础语法-函数

函数介绍:

                将任意代码封装起来,需要用的时候调用就行

                function 函数名(){函数体(封装的代码)}

                只有调用函数时,函数里的代码才会执行

                调用函数的语句:函数名()

                函数封装后可以放在一个文件中,外部引入封装文件

                封装函数,最好弄个注释在函数之前

                优点:封装代码后,代码更加简洁

                        复用,在重复功能的时候直接调用就行

                        代码执行时机,随时可以再我们想要执行的时候执行

/* 

        打印100-200内能被6整除的前三个数

*/

        function print() {

            var count = 0

            for (var i = 100; i <= 200; i++) {

                if (i % 6 === 0) {

                    console.log(i)

                    count++

                }

                if (count == 3) {

                    break

                }

            }

        }

/* 

      入职时工资为10k,每年增长5%,50年后工资为

*/

        function salary() {

            var pay = 10 * 12

            for (var i = 2; i <= 50; i++) {

                pay *= 1.05

            }

            console.log('50年后工资为:' + (pay / 12).toFixed(2) + 'k')

        }

/* 

         打印出1000-2000年中的闰年,每四个换行

*/

        function runNian() {

            var count = 0

            for (var i = 1000; i <= 2000; i += 4) {

                if ((i % 4 === 0 && i % 100 !== 0) || i % 400 === 0) {

                    document.write(i+' ')

                    count++

                }

                if (count == 4) {

                    document.write('<br/>')

                    count = 0

                }

            }

        }

       // 函数调用

        print()

        salary()

        runNian()

函数的参数:

                function 函数名(a,b,c……){函数体}

                在函数名之后的括号里面写上一些参数,这些参数便可以再函数体中使用

                这就是函数的参数,不需要用var 进行变量声明

                调用时需要在函数体中加上数字 函数名(10,20,30……)

                形参:只要在定义函数的括号中的变量就是形参

                实参:调用时,传递的值叫做实参

            函数参数个数:

                如果实参和形参的个数不对应,实参也会按照顺序赋值给形参

                实参多了就不用,形参多了,多的那个就没有被赋值

                可以给形参一个默认值

                    y = y || 10 //如果y没有传值(undefined.false),使用右边的值,作为默认值

                    可以再函数值后面的括号里面给y=10, 默认值

/*

            定义求三个数中最大值的函数

        */

        function threeMax(num1, num2, num3) {

            var max = num1 > num2 ? num1 : num2

            max = max > num3 ? max : num3

            console.log(num1 + ',' + num2 + ',' + num3 + '中最大的数是:' + max)

        }

        threeMax(23, 12, 33)

        threeMax(33, 66, 22)

函数返回值:

                return  作用:将return后面变量的值返回到函数调用处

                此时,可以把函数调佣赋值给一个变量

函数的分类:根据参数和返回值,可将函数分成4中类型

                1、无参无返回值 function 函数名(){函数体} 函数名()  

                2、有参无返回值 function 函数名(形参……){函数体} 函数名(实参……)

                3、无参有返回值 function 函数名(){函数体 return 变量值} var 变量=函数名()

                4、有参有返回值 function 函数名(形参……){函数体 return 变量值} var 变量=函数(实参……)

return语句:在函数体中使用

                return 值:直接返回值到调佣语句

                return没有值时,返回到调用语句,不执行函数return后面的语句

// 封装求三个数最大的,不能小于0

        function maxThree(num1, num2, num3) {

            if (num1 < 0 || num2 < 0 || num3 < 0) {

                return 'error'

            }

            var max = num1 > num2 ? num1 : num2

            max = max > num3 ? max : num3

            return max

        }

        var str = maxThree(11, -1, 13)

        console.log(str)

定义函数:

                声明式:function 函数名(){函数体}

                    特点:函数调用语句可以在函数定义的上面

                赋值式:var 函数名=function(){函数体} 调用:函数名()

                    特点:函数调用语句不能在函数定义的上面

var ouShu = function (min, max) {

            for (var i = min; i <= max; i++) {

                if (i % 2 === 0) {

                    console.log(i)

                }

            }

        }

        ouShu(3, 66)

js源代码——》浏览器解析——》执行代码——》输出结果

            预解析:在浏览器解析之前,js源代码之后,先对源代码通读

                遇到声明式函数和var关键字,都会提到最前面

                注意:var只会把声明变量提前,而赋值不会提前

                如果函数名和变量名相同时,函数优先

  • 0
    点赞
  • 0
    收藏
    觉得还不错? 一键收藏
  • 0
    评论

“相关推荐”对你有帮助么?

  • 非常没帮助
  • 没帮助
  • 一般
  • 有帮助
  • 非常有帮助
提交
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

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

抵扣说明:

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

余额充值