書上說如果在函數定義之前調用函數,執行會出錯,可是我自己打代碼並沒有出錯,這是為什麼??
這種說法是不對的,那要看你定義函數的方式而定
1、function a(){}
以這種方式定義函數無論定義在調用前後都不會出錯。
2. var a=function(){}
以這種方式定義的函數就如書中所說的必須定義在調用前,否則會出錯。
會出現這兩種不同結果的原因是函數的聲明提前導致的。
另外提一點,看你的書上的說法,感覺你的書已經比較老了,有些說法已經過時了,現在不適用了。建議換些最近出版的外文翻譯版來看看,這方面來說外國人的觀點還是更有說服力的。