• Javascript 函数表达式


    函数有两种模式:函数定义函数表达式

        函数定义是在任何语言中都会遇见的,这里不再多说了。

        函数表达式: 是作为表达式在代码中出现,当程序运行到此处时,才执行这部分的代码内容。

    函数字面量组成部分:

        第一部分,关键词 function
        第二部分,函数名,但是可有可无。
        第三部分,包含在括号内的参数,当然参数也是可有可无的,括号不能少。
        第四部分,是一组包裹在大括号的语句块,也就是函数要执行的具体代码,可以为空。

    例如

     function () {}

    这个写法符合上面4条规则,但却不是表达式,运行会报语法错误。

    只有当作表达式的时候才能正常执行。

     1. (function () {});
     2. var a = function () {};
     3. var obj = {fn: function () {}};

    再来看个

    var fn = function test() {};

    这个也是函数字面量,test 是这个函数的名字,但是只对函数体内可见,外部是不可调用的

    var fn = function test() { console.log(test); };
    console.log(fn);     // function test() { console.log(test); };
    fn();                // function test() { console.log(test); };
    console.log(test);   // 报 test 未定义

         这里的函数名可用于内部使用,比如递归调用的时候,会很方便。

    为什么不用 arguments.callee 呢。很多地方都可以看到说 arguments 是把双刃剑,是性能杀手,能避免就尽量避免使用。

    加一个函数名,调用方便,性能极致,对项目压缩也有好处,何乐而不为呢?

  • 相关阅读:
    SignalR 持久链接 (该功能为手机设备与后台同个用户id进行实现的,仅用signalR学习参考)
    SQL SERVER 分割符转列
    js时间计算加减
    SQL查询历史执行语句
    MSSQL 多行数据串联字符分割单行
    居于HttpWebRequest的HTTP GET/POST请求
    硬件UDP读数AsynUdpClient
    SQL取分组数据的所有第一条数据
    Python 文件的使用
    Python 数据类型
  • 原文地址:https://www.cnblogs.com/king516/p/3795972.html
Copyright © 2020-2023  润新知