js函数笔记

118 阅读1分钟

函数

函数的定义

函数: function,是被设计为执行特定任务的代码块

说明: 函数可以把具有相同或相似逻辑的代码“包裹”起来,通过函数调用执行这些被“包裹”的代码逻辑,这么做的优势 是有利于精简代码方便复用。

函数的作用

简化代码,方便复用,封装程序功能

函数的使用

函数的语法声明

1648814331970

 <script>
        //函数声明
        function sayHi() {
            console.log('你好');
            console.log('你真好');
            console.log('你真是太好了');
            let say = prompt('你好吗')
            document.write(say)
            
        }
        //函数调用,不调用是不会执行的
        sayHi()
        sayHi()
        sayHi()

    </script>

函数的调用

1648814417820

命名规范

1648814370632

函数的参数

形参和实参

1648814556439

1648814762543

1648814822382

 <script>
        //声明函数
        function getSum(num1,num2) {
            let num3 = num1 + num2 
           document.write(`${num3} <br>`)
        }
        getSum(200,80)
        getSum(6,22)
        getSum(30,40)
    </script>

函数的返回值

return

1648814896677

 <script>
        function getMax(n1,n2) {
            if (n1>n2) {
                //返回值,返回值是什么输出就会是什么
                return n1
                
            } else {
                return n2
            }
            
        }
        //输出的三种方式
        //输出函数返回值
        console.log(getMax(1,3));
        document.write(getMax(2,4))
        alert(getMax(6,8))

    </script>
   

细节:  在函数体中使用 return 关键字能将内部的执行结果交给函数外部使用

 函数内部只能出现 1 次 return,并且 return 后面代码不会再被执行,所以 return 后面的数据不要换行写

 return会立即结束当前函数

 函数可以没有 return,这种情况函数默认返回值为 undefined

作用域

1648815103085

1648815125712

变量有一个坑, 特殊情况: 如果函数内部或者块级作用域内部,变量没有声明,直接赋值,也当全局变量看,但是强烈不推荐 但是有一种情况,函数内部的形参可以看做是局部变量。

作用域链

作用域链:只是一种代码寻找变量来执行的机制规则

​ 采取就近原则的方式来查找变量最终的值

​ 就近的参照物是函数的声明,函数的定义来寻找最近的变量

匿名函数

作用:防止变量污染,执行一次性的任务

特点:在定义函数的同时也执行函数

1648815437575

1648815479733

1648815526439