zoukankan      html  css  js  c++  java
  • Js中的函数

    什么是函数:具有特定功能的代码块

    函数与方法:调用的方式不同 函数通过函数名 | 方法通过.语法调用(点语法)

    定义函数:function函数名(参数列表) {

        函数体;

        (函数体可以包含函数的返回值)

    }

    // 函数的调用: 函数名(参数列表)

    //      函数的调用()一定不可以省略, 参数列表看情况(不管需不需要,均可以传或不传)

    // 函数的分类:

    // 无参函数:

    function fn1() {

        console.log("无参函数")

    }

    fn1();

    // 有参函数:

    function fn2(a, b) {

        console.log("a,b的和:", a + b)

    }

    fn2(10, 20);

    // 匿名函数:

    var fn3 = function () {

        // 匿名函数虽然没有名字, 但会开辟内存空间, 所以当然可以用一个变量来指向这个内存空间

        console.log("没有直接定义名字的函数");

    };

    fn3();  // 系统不好在()()之间添加;作为语句结束,需要添加分号时一定需要手动添加

    fn4 = fn3;

    fn4();

    // 匿名函数的自调用

    (function () {

        // 定义一个匿名函数, 至少需要使用一次, 使用一次的方式就叫做 匿名函数的自调用

        // 如果匿名函数不存在任何使用, 编译就无法通过

        // 匿名函数的自调用:

        //      1.将整个匿名函数作为一个整体, 用()将其包裹

        //      2.并完成函数的调用, 添加 (参数列表)

        console.log(" 匿名函数的自调用");

    })();

    // 函数的参数:

    // 函数的返回值:

    // 函数的嵌套(定义 | 调用)

    匿名函数出现的原因:为了生成一个局部的作用域(不被别人访问或出现重复定义的变量 )

    函数的闭包:

    // 闭包: 局部的函数(被一个函数包裹的函数) // 为什么使用闭包: // 1.一个函数要使用另一个函数的局部变量 // 2.闭包会持久化包裹自身的函数的局部变量 // 3.解决循环绑定

    // 函数的嵌套定义
    function outer() {
        var num = 10;
        function inner() {
            // 1.在inner函数中,使用了outer的局部变量num
            return num;
        }
        return inner;
    }
    var innerFn = outer();
    // 2.借助闭包,将局部变量num的生命周期提升了
    var num = innerFn();
    console.log(num);

  • 相关阅读:
    [Winform]Media Player com组件应用中遇到的问题
    [Winform]Media Player播放控制面板控制,单击事件截获
    [Winform]Media Player组件全屏播放的设置
    [EF]数据上下文该如何实例化?
    [Winform]在关闭程序后,托盘不会消失的问题
    咏南中间件跨平台解决方案
    硬件中间件
    BASE64使用场景
    DELPHI7 ADO二层升三层新增LINUX服务器方案
    NGINX心跳检测
  • 原文地址:https://www.cnblogs.com/zhouhai007/p/10145439.html
Copyright © 2011-2022 走看看