今天來簡單而又詳細地說說JavaScript和Java的關係.編程
開門見山總結性一句話,它們之間的關係 = 雷鋒和雷峯塔之間的關係,換句話說:它們之間沒什麼關係。瀏覽器
但每每有很多初學者甚至中級者認爲它們之間有密切的關係,這很讓人無語。框架
我的認爲若是不分辨清楚,Java學得越好的初學者,對於JavaScript就會學得越糟。由於在一張白紙上好畫圖,在一張花紙上就很難再畫圖了。函數
比較 | JavaScript | Java |
誕生時間 | 1995年 | 1995年 |
曾用名 | Mocha, LiveScript | Oak |
母公司 | 網景公司(美國) | 太陽微系統公司(美國) |
主要做者 | Brendan Eich 一我的 | James Gosling及其小夥伴 |
開發完成時間 | 前先後後共10天 | 前先後後1、二年 |
是否面向對象? | 是,基於原型和原型鏈方式 | 是,基於類和繼承的方式 |
能夠採用的編程風格 | 面向過程、面向對象、面向函數 | 面向過程、面向對象,Java8以後加入了部分面向函數的特色 |
語言類型 | 動態語言、弱類型 | 靜態語言、強類型 |
能否用於客服端開發? | 能夠,主要用於瀏覽器端 | 能夠,但在桌面端應用的爭奪中完全輸給了微軟的VS.Net系列 |
能否用於手機端開發? | 能夠,叫Web App | 能夠,叫Android(安卓) |
類庫和框架數量如何?社區表現如何? | 很是多,很是豐富,很是活躍 | 比較多,比較豐富,比較活躍 |
如今的主人 | 全天JavaScript開源社區 | Oracle公司(美國) |
對初學者學習的難度? | 上手快,學會很容易,學精通很不容易 | 上手慢,學會可能慢一點,學精通也很不容易 |
體系結構 | 本質上精簡、但如今衍生出的類庫、框架愈來愈多,讓人應接不暇 | 一直都比較龐大、龐雜。 |
是否跨平臺? | 是(全世界幾乎全部的瀏覽器都支持,若是不支持,就幾乎沒人用) | 是(只要安裝了Java虛擬機的電腦均可以運行) |
編譯型仍是解釋型? | 解釋型,但某些經常使用代碼能夠被編譯成本地代碼 | 先編譯成字節碼,再經過虛擬機解釋執行 |
哪一個更強大? | 沒法籠統回答,JavaScript高手比Java低手強大 | 沒法籠統回答,Java高手比JavaScript低手強大 |
哪一個和H5的結合更緊密? | JavaScript | |
中國的大部分學校裏主要教哪一個? | Java |