2016-07-16 90 views
3

我是編程新手。我正在關注JavaScript的tuturial。但是我對jit compilar和解釋器感到困惑。 javscript是從源代碼翻譯成字節/本地代碼。用jit compilar或解釋器?或者取決於您正在運行的瀏覽器和JavaScript引擎。是javascript解釋還是jit編譯

感謝您的respons

+2

https://en.wikipedia.org/wiki/JavaScript第一句話,在第三段中有更多信息。 – str

+0

是的,有時候。是。是。 – Bergi

回答

0

JavaScript是腳本語言和瀏覽器中執行腳本這是在文本格式。所以根據定義,這使JavaScript解釋語言。

編譯語言是從二進制文件執行的語言。

JIT編譯只是JavaScript引擎可以做的一種優化方式,但是您永遠不會真正生成二進制JS文件,因此語言被解釋爲一種。

+2

雖然「interpeted language」的含義是主觀的,但我傾向於使用Wikipedia:*「解釋型語言是一種編程語言,其大部分實現可以直接執行指令,而無需事先將程序編譯爲機器語言指令」* 。由於最流行的JavaScript引擎編譯爲本機機器碼,我不同意你的答案。恕我直言,「解釋型語言」是無意義的,因爲你可以爲任何語言編寫解釋器。 –

+0

有一點指向它,我只是傾向於使它更實用,如果它是腳本語言,那麼它會被解釋。而且,在javascript的情況下並不那麼簡單,因爲有很多enignes,甚至那些使用jit的用戶總是不會使用它。 https://docs.google.com/document/d/11T2CRex9hXxoJwbYqVQ32yIPMh0uouUZLdyrtmMoL44/edit?pli=1#heading=h.6jz9dj3bnr8t – sielakos

+0

有趣的閱讀! –

0

Javascript是一種解釋型語言,它由瀏覽器直接解釋執行。

但是,現代瀏覽器支持JIT編譯,將其轉換爲字節碼以實現高性能。