函数调用上的区别
+ 两种声明方式, 调用方式是一样的
+ 区别: 调用的时机不一样
=> 声明式函数, 可以在声明之前调用, 也可以在声明之后调用
=> 赋值式函数, 只能在声明之后调用, 声明之前会报错
扩展: 报错信息
+ Uncaught TypeError: fun is not a function=> 不是表示 fun 没有声明
=> 只是表示 fun 不是一个函数
=> 你在代码里面写了一个 xxx()=> 这个 xxx 不是一个函数
+ Uncaught ReferenceError: fun is not defined
=> 表示 fun 这个变量没有定义过
=> 你在某一个位置使用了 fun 变量
=> 但是你从来没有定义过