函数表达式和函数声明的区别

函数表达式和函数声明的区别

语法上

  • 函数声明:函数声明是在代码里面作为单独的一段代码,并且在函数末尾是没有分号的。

例如:

function sum(a,b){
    return a+b;
}
  • 函数表达式:函数表达四是在一个表达式中或者另一个语法结构中创建的函数,此时函数是作为语句的一部分,并且此时函数表达式最后是有分号的。

例如:

let sum = funcition(a,b){
    return a+b;
};

这就是函数表达式与函数声明在语法上的区别。

作用时间

要想知道他们俩在作用时间上的区别,我们就需要知道这个函数什么时候开始创建。

首先,函数表达式,函数表达式这个函数,是需要代码执行到这一行代码的时候,函数才开始被创建,从现在开始,这个函数才可以使用(分配、调用等等)。

其次函数声明,在函数声明被定义之前,他就可以被调用,也就是说函数声明,我们可以在代码的任何地方调用这个函数。