函数声明的三种方式

1----普通函数声明方式  ------->存在函数提升       会将函数提升到最上面      函数是一等公民        函数的提升会在变量的提升的上面。 

1 function sum(){};调用:sum()

2---函数表达式声明方式    ------> 将一个函数(匿名函数/命名函数)赋值给一个变量   不存在函数提升    变量会提升    函数体还是留在原来位置

1  var add=function(){};调用:add()    //虽然命名式函数表达式有函数名,但是不能通过这个函数名来调用函数,还是只能通过被赋值的变量加上小括号才能调用

3----构造函数声明方式   

var add2=new Function();调用 :add2()
原文地址:https://www.cnblogs.com/ndh074512/p/15083446.html