JavaScript之函数相关知识

1、函数作用

功能代码块的封装,减少代码的冗余

2、函数的声明

2.1 方式一

function 函数名(形参1,形参2…){执行体}

2.2 方式二

var 函数名 = new Function(“形参1”,“形参2”…,“函数执行体”);
注意:此声明表明在js中函数是作为对象存在的

2.3 方式三

var 变量名 = function(形参名1 ,形参名2…){函数执行体}

3、函数的参数

js中的函数在调用时,形参可以不赋值,不会报错。
js中的函数在调用时,形参赋值可以不全部赋值,不会报错,但是实参会依次进行赋值。

4、函数的返回值

在js中如果函数有返回值则直接返回,没有返回值则返回undefined
注意:js的代码声明区域和执行区域是一起的,都是在js代码的代码域中。

5、样例

<!DOCTYPE html>
<html lang = "en">
<head>
    <meta charset = "UTF-8">
    <meta name = "viewport" content = "width = device - width, initial - scale = 1.0">
    <meta http-equiv = "X-UA-Compatible" content = "ie-edge">
    <title>JavaScript之函数学习</title>
    <script>
        //1、声明函数
            //方式一:
                function test1( a1, a2){
                    alert("函数声明一");
                }
            //方式二:
                var test2 = new Function("a1","a1","alert('函数声明二')");
            //方式三:
                var test3 = function(a1,a2){
                    alert("我是函数声明三");
                }

            //调用声明的函数
                test1="abc";
                alert(test1);
                test1(1,2);
                test2(1,2);
                alert(test2);
        //2、函数的参数
                function testParam(a1,a2,a3){
                    alert(a1);
                    alert("函数的形参学习");
                }
                testParam(1,2);
        //3、函数的返回值
                var testReturn = function(){
                    alert("函数的返回值学习");
                    return "js";
                }
                alert(testReturn());
    </script>
</head>
<body>
    
</body>
</html>

6、函数的执行符

在js中函数的执行符值()
没有小括号则函数名其实就是一个变量
加上小括号则函数会被执行

7、函数作为实参传递

在js中函数是可以作为实参进行传递的

function testobj(a){
       alert(a());
}
var testParam = function(){
      alert("我是函数参数");
 }
 testobj(testParam);

8、样例二

<!DOCTYPE html>
<html lang = "en">
<head>
    <meta charset = "UTF-8">
    <meta name = "viewport" content = "width = device - width, initial - scale = 1.0">
    <meta http-equiv = "X-UA-Compatible" content = "ie-edge">
    <title>JavaScript之函数学习二</title>
    <script>
        //1、函数的执行符
            var test1 = function(){
                alert("函数的执行符学习");
                return "js";
            }
            alert(test1());
        //2、函数作为实参进行传递
            function testobj(a){
                alert(a());
            }

            var testParam = function(){
                alert("我是函数参数");
            }
            testobj(testParam);
        //3、开发中经常用的传递方式
            function testObj2(fn){
                //testObj2函数在被调用的时候,实参必须是一个函数对象
                fn();
            }

            testObj2(function(){
                alert("开发");
            })
    </script>
</head>
<body>
    
</body>
</html>
  • 0
    点赞
  • 0
    收藏
    觉得还不错? 一键收藏
  • 打赏
    打赏
  • 0
    评论
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包

打赏作者

熊凯瑞

你的鼓励将是我创作的最大动力

¥1 ¥2 ¥4 ¥6 ¥10 ¥20
扫码支付:¥1
获取中
扫码支付

您的余额不足,请更换扫码支付或充值

打赏作者

实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

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

余额充值