js函数的3种表现形式

1.一般形式

function fn (num) {
 }

会进行函数的预解释,函数会进行声明和定义,即可以在上边也可以在下边调用。

2.匿名函数表达式

var fn = function() {
 }

会进行函数的预解释,但是只是进行变量fn的声明不会进行定义(赋值),因此只可以在函数后面进行调用,否则如果在函数上边调用,相当于undefined(),会报错fn不是一个function.

3.自执行函数

有5种表现形式
(function fn(num){})() 
+function fn(num) {} ()
-function fn(num) {} ()
!function fn(num) {} ()
~function fn(num) {} ()

不会进行函数的预解释

预解释的含义可以参考我之前的文章。。。。。很重要,超恶心的,超给力的东西。。

你可能感兴趣的:(js函数的3种表现形式)