• 首页 首页 icon
  • 工具库 工具库 icon
    • IP查询 IP查询 icon
  • 内容库 内容库 icon
    • 快讯库 快讯库 icon
    • 精品库 精品库 icon
    • 问答库 问答库 icon
  • 更多 更多 icon
    • 服务条款 服务条款 icon

JavaScript三种函数的定义方式

武飞扬头像
一口夹心糖
帮助1

函数的三种定义方法分别是:函数定义语句、函数直接量表达式和Function()构造函数的方法。

1.函数定义语句

  1.  
    //求和函数
  2.  
    function sum(){
  3.  
    return a b;
  4.  
    }
  5.  
    //调用函数
  6.  
    console.log(sum())

这是最典型的函数声明,以关键字function开始,其后跟随函数名称标识符、一对圆括号(包含由0个或多个逗号隔开的参数名称)和一对花括号(包含0条或多条JS语句,构成函数体)。这种函数定义方式需要显式的指定函数名称,在代码执行前就被解释器加载到作用域中,这个特性可以让我们在函数定义之前就调用该函数。
 

2.函数直接量表达式

  1.  
    //求阶乘的函数
  2.  
    var factorial =function fact(x){//将函数赋值给一个变量
  3.  
    if(x<0){
  4.  
    return NaN;
  5.  
    }else if(x===0){
  6.  
    return 1
  7.  
    }else x*fact(x-1)//递归函数
  8.  
    }
  9.  
    console.log(factorial (3))//6

与函数定义语句一样,函数直接量表达式也是用到了关键字function。一般这种定义方式适用于将它作为一个大的表达式的一部分,比如在赋值和调用过程中定义函数。通过函数直接量生成的函数,函数名称可以省略,此时就是一个匿名函数。

3.Function()构造函数

var f = new Function('x','y','return x y')//构造函数

 Function()构造函数可以传入任意数量的字符串实参,最后一个实参所表示的文本是函数体,可以包含任意数量的JavaScript语句。如果构造的函数不包含任何参数,则只需传入一个函数体即可。与前两者方式不同的是,Function()构造函数允许JavaScript在运行时动态地创建并翻译函数。每次调用Function()构造函数都会解析函数体,并创建新的函数对象。因而,在循环或多次调用的函数中执行这个构造函数,执行效率会受影响。相比之下,循环中的嵌套函数和函数定义表达式则不会每次执行时都重新编译。

这篇好文章是转载于:学新通技术网

  • 版权申明: 本站部分内容来自互联网,仅供学习及演示用,请勿用于商业和其他非法用途。如果侵犯了您的权益请与我们联系,请提供相关证据及您的身份证明,我们将在收到邮件后48小时内删除。
  • 本站站名: 学新通技术网
  • 本文地址: /boutique/detail/tanhghakgh
系列文章
更多 icon
同类精品
更多 icon
继续加载