js函数基础回顾

回头又跑去看了下尚硅谷的js基础视频
https://www.bilibili.com/video/av22958172/?p=51。
便做了如下笔记:
1.函数也是一个对象
2.函数可以封装一些功能(代码),在需要时可以执行这些功能(代码)
3.函数可以保存一些代码在需要的时候调用
 <script>
        // 创建函数
        var fun = new Function();
        console.log(fun);//输出一个空函数
        console.log(typeof fun);//输出function

        //封装函数
        var fun = new Function("console.log('hello');");//封装的是可执行代码,这种方式在开发中不建议使用

        //调用函数
        fun();//hello。调用函数后函数才会执行
        fun();//hello。多次调用还是hello,在其他地方调用,输出仍是hello


        // 函数做对象使用
        fun.hello = 'hello';
        console.log(fun.hello);//hello




        // 重点:开发中使用方法
        // 第一种方式:
        // 语法:function 函数名(形参1,形参2...形参n ){语句};
        
        
        //1声明函数:
        function fun2() {
            console.log("执行语句");
        }
        //2执行函数
        fun2();//执行语句

        // 第二种方式:
        // 使用函数表达式来创建一个函数
        // 语法: var 函数名 = function(形参1,形参2...形参n){语句}
        
        //1给一个匿名函数命名fun3,相当于赋值给了fun3
        var fun3 = function () {
            console.log("匿名函数赋值给了fun3")
        };//赋值语句
        
        //2执行函数
        fun3();//匿名函数赋值给了fun3
    </script>
函数参数使用:
1.可以定义一个或多个形参
2.形参之间使用,隔开,声明蚕食相当于函数内部声明了对应变量
3.但是并不赋值
<script>
        // 实例一

        // 声明函数使用形参x,y
        function sum(x, y) {
            console.log(x + y);
        }//求x,y的和

        //调用函数使用实参1,1或2,5。可以多次调用
        sum(1,1);//2
        sum(2,5);//7

        // 注意:a使用函数时,解析器不会检查实参的类型
        sum(123, 'hello');//123hello
        sum(true, false);//1
        // b调用函数是,解析器也不会检查实参的数量
        sum(123, 456, 'hello', true, false);//579,多余的会舍去
        sum(123);//NaN。如果少于,则少的参数为undefined


    </script>

返回值:
1.语法 :return 值
2.return后的值将会作为函数的执行结果返回
3.在函数中return后的语句不会执行
4.return;后面不跟值相当于renturn undefined;
<script>
        
        // 实例二
        // 声明一个函数:计算三个数之和
        function add(a, b, c) {
            var d = a + b + c;
            return d;
            alert("hello");//在函数中return后的语句不会执行
        }//返回一个结果

        // 调用函数
        var result = add(1, 2, 3)
        console.log(result);//6


        // 实例三:
        function isOu(num) {
            return num % 2 == 0;
        }//判断是否为偶数
        var result = isOu(3);
        console.log(result);//false;
    </script>
当参数过多时该如何去声明函数
 <script>
        var obj = {
            name: '我',
            age: '18',
            gender: '男'
        }
        function sayMy(o) {
            console.log(o.name + o.age + o.gender);
        }
        sayMy(obj);//我18男
    </script>

猜你喜欢

转载自www.cnblogs.com/yihan123/p/10373801.html