ReferenceError:作用域判别错误,通过作用域链的搜寻找不到相应的变量。
TypeError:可以通过作用域搜索到变量,但是对变量的操作不合法。
SyntaxError:语法错误
直接在函数体内定义的函数声明,整个都会提前;
但是在块中定义的函数声明,只会提升其声明部分,不分配实际的内存空间。如图5-1