所以我正在做一個小提琴,並注意到我得到了不同的結果,一個沒有錯誤,另一個是關於取決於瀏覽器的未定義函數。爲什麼Chrome處理本地函數的作用域與Firefox不同?
在Chrome中,它功能完美,工作良好,但在Firefox中它提供了未定義的功能。
這是我使用的小提琴:
http://jsfiddle.net/98a45Lk9/ - 單擊畫布,檢查開發者工具在Chrome和Firefox瀏覽器。
對我來說,在Chrome中我得到:test
在Firefox中,我得到:ReferenceError: update is not defined
爲什麼這些瀏覽器的JavaScript的處理不同,因爲他們似乎產生不同的結果,他們必須有不同的規則?
我不知道其他瀏覽器如IE和Opera的結果。
什麼'更新'應該是? – Pointy
這只是一個函數,它可以在一個瀏覽器中定義任何'something',在另一個瀏覽器中定義。'我不明白這個不一致。它爲什麼會發生。 – Sir
那麼如果它是未定義的,那麼它是未定義的。你期望'update'做什麼?如果標準中沒有任何內容表明在window對象上應該有'update'方法,那麼這只是瀏覽器之間的一種實現變體。 – Pointy