美文网首页
重点--函数

重点--函数

作者: 潘肚饿兵哥哥 | 来源:发表于2019-06-22 16:42 被阅读0次

\color{rgba(254, 67, 101, .8)}{函数的概念}

在JS中,可能会定义非常多的相同代码或功能相似的代码,这些代码可能需要大量重复使用
虽然for也能实现一些简单的重复操作,但是比较有局限性,此时我们就可以用函数

\color{rgba(254, 67, 101, .8)}{声明函数和调用函数:}
\color{rgba(254, 67, 101, .8)}{如果函数内参数写死,调用时就不需要加参数了}

function 函数名(){
      //函数体
}

函数名();

\color{rgba(254, 67, 101, .8)}{函数使用}

\color{rgba(254, 67, 101, .8)}{将1-100的求和代码块封装成函数:}

        //将1-100的和运算代码块封装成函数:
        var sum = 0;
        for (var i = 0; i <= 100; i++) {
            sum += i;
        }
        console.log(sum);

        function getSum(num1, num2) {
            var sum = 0;
            for (var i = num1; i <= num2; i++) {
                sum += i;
            }
            console.log(sum);
        }
        getSum(1, 100);
image.png

\color{rgba(254, 67, 101, .8)}{函数参数}
\color{rgba(254, 67, 101, .8)}{形参和实参}

function fun(形参1,形参2...){
}
fun(实参1,实参2...);

\color{rgba(254, 67, 101, .8)}{形参:形式上的参数(在声明函数的小括号里)}
\color{rgba(254, 67, 101, .8)}{实参:实际上的参数(在调用的小括号里)}

\color{rgba(254, 67, 101, .8)}{形参和实参的执行过程:}

  • 读到函数体时,先略过,先读取调用语句,然后再返回去读取函数体,此时,再把调用语句中的实参给形参
  • 所以,形参是接收实参的,实质上就是给一个变量赋值,可以理解为a=1;a是形参,1是实参,
    行参等于是一个不需要声明的变量

\color{rgba(254, 67, 101, .8)}{函数形参和实参个数不匹配问题:}
\color{rgba(254, 67, 101, .8)}{如果个数一直,则正常输出结果}
\color{rgba(254, 67, 101, .8)}{如果实参个数多余行参个数,按行参个数来取,多余的自动去掉}

\color{rgba(254, 67, 101, .8)}{如果实参个数小余行参个数,那么等于一个变量没有接收到值}
\color{rgba(254, 67, 101, .8)}{这个函数的值就是undefined,这个函数的返回值就是NaN}

         * 函数 function
         *  - 函数也是一个对象
         *  - 函数中可以封装一些功能(代码),在需要时可以执行这些功能(代码)
         *  - 函数中可以保存一些代码在需要的时候调用
         *  - 使用typeof检查一个函数对象时,会返回function
         
        
        //我们在实际开发中很少使用构造函数var fun = new Function("");来创建一个函数对象
        //创建一个函数对象
        //可以将要封装的代码以字符串的形式传递给构造函数
        //var fun = new Function("console.log('Hello 这是我的第一个函数');");
        
        //封装到函数中的代码不会立即执行
        //函数中的代码会在函数调用的时候执行
        //调用函数 语法:函数对象()
        //当调用函数时,函数中封装的代码会按照顺序执行
        //创建:var fun = new Function("console.log('Hello 这是我的第一个函数');");
        //调用:fun();
        
        // 向函数中添加一个功能:
        // fun.hello="你好";
        // 函数对象具有所有普通对象的功能,但比普通对象更强大,他不止可以装属性,还可以装代码片段
        
        
        
        /*
         * 使用 函数声明 来创建一个函数而不是构造函数来创建对象
         *  语法:
         *      function 函数名([形参1,形参2...形参N]){
         *          语句...
         *      }
         */
        
        
        
        
         * 使用 函数表达式 来创建一个函数,中括号写不写都行
         * var 函数名  = function([形参1,形参2...形参N]){
         *   语句....
         *  }
         * 
         * function fun2(){}这是声明函数
         * var fun =function(){};这是匿名函数(给一个变量进行赋值),没有名,上面的有名
         * 两种写法本质上无区别,上面的不用写分号,下面的匿名函数最好写上分号
         */
        
        var fun3 = function(){
            console.log("我是匿名函数中封装的代码");
        };
        
        
        fun3();

相关文章

  • 重点--函数

    在JS中,可能会定义非常多的相同代码或功能相似的代码,这些代码可能需要大量重复使用虽然for也能实现一些简单的重复...

  • 函数指针, 指针函数, 数组指针, 指针数组

    函数指针 重点是指针,存储的是地址,存储的函数的入口地址 指针函数 重点是函数,返回值是指针 数组指针 重点是指针...

  • 重点函数

    :lookupimportforward读取资源:_read_images

  • js基础

    js基础 函数 重点掌握 ​ 如何声明,如何调用,如何写函数 声明 ​ function 函数名(...

  • 重点--函数的参数

  • [陈宗权C++]C++第1天PM--C++常量_指针_new_d

    参考: 重点: 1.成员函数指针

  • 函数

    简单函数格式 定义 调用函数 传参函数格式: 传参数 定义 注意 重点 实例(简单) 实例(传参) 实例函数(调用...

  • 前端6班-裘曾渊 右下角广告

    重点 广告定位 广告事件处理 函数封装

  • day9-函数2

    9.1 函数的调用 函数在声明时不会执行函数体,只有在调用函数的时候才会执行函数体 函数的调用过程(重点!) a....

  • 19-01-07recode

    1.函数的声明 def 函数名(参数列表):(缩进) 函数体 lambda 参数列表: 返回值 (重点)函数声明...

网友评论

      本文标题:重点--函数

      本文链接:https://www.haomeiwen.com/subject/vvkvqctx.html