課程
/前端開發
/JavaScript
/JavaScript入門篇
JavaScript與java有關系沒?
2016-12-17
源自:JavaScript入門篇 2-6
正在回答
關于java和javascript的關系,我曾在一個論壇上看過這樣一句話,java和javascript的關系,就好比雷鋒和雷峰塔的關系,實在是經典!
因為名字的關系,總是有人誤以為Javascript是Java的一個子集,或者必然會存在一些關系。但非常讓大家失望,這兩種編程語言除了名字開頭相同之外,沒有其它內在的關系!
什么是Javascript?
我在上一篇Javascript簡介中已經介紹了什么是Javascript,它是運行在瀏覽器中的一種腳本語言,在web頁面中,Javascript可謂是無所不能:
可以操作HTML,提供了一種運行時改變HTML的工具
可以附加并執行事件,符合面向事件編程的思想
數據驗證功能,在提交表單時對表單數據進行合法性驗證
對客戶瀏覽器的操作,前進、后退、刷新、跳轉、打開新窗口、打印等
可以創建并使用Cookies
什么是Java呢?
Java是Sun公司推出的一種編程語言。它是一種通過解釋方式來執行的語言,語法規則和C++類似。同時,Java也是一種跨平臺的程序設計語言。用Java語言編寫的程序叫做“Applet”(小應用程序),用編譯器將它編譯成類文件后,將它存在WWW頁面中,并在HTML檔上作好相應標記,用戶端只要裝上Java的客戶軟件就可以在網上直接運行“Applet”。
Java非常適合于企業網絡和Internet環境,現在已成為Internet中最受歡迎、最有影響的編程語言之一。 Java有許多值得稱道的優點,如簡單、面向對象、分布式、解釋性、可靠、安全、結構中立性、可移植性、高性能、多線程、動態性等。Java擯棄了C++中各種弊大于利的功能和許多很少用到的功能。 Jave可以運行與任何微處理器,用Java開發的程序可以在網絡上傳輸,并運行于任何客戶機上。
Javascript名字的由來
JavaScript最早是被稱為Mocha(魔卡)的,這是這個項目的代碼名。這個名字一直用到Netscape2.0 beta 2發布之前(95.11.04)——包括在beta 1中彈出的錯誤框上,還可以看到Mocha的名字。不過,早在此前的9月18號,netscape就已經發布消息將在LiveWire中啟用一種服務器端腳本(未提及名稱)。又因為我們前面提到的“前后端通用腳本”的設計,該語言在beta 2發布時就使用了內部名稱LiveScript。
但同樣混亂的事情是,事實上這時Netscape已經決定將該語言命名為“JavaScript”。因此在beta 2的發布備忘中該語言稱為JavaScript,而界面上卻從Mocha改為了LiveScript。這一局面一直持續到12月4日,netscape與sun共同發布聲明,正式啟用了JavaScript這個名字。隨后beta 4發布(95.12.20),界面和文檔上就統一了。
所以事實上“LiveScript”這個名字可以考證的生命周期,也就只有一個月的時間(在95.11.04- 12.04)。但Mocha畢竟只是項目代碼名,而非產品名,所以后來人們追溯JavaScript的歷史,大多只提到LiveScript為止。
Javascript和Java的區別
一、javascript與Java是由不同的公司開發的不同產品。javascript是Netscape公司的產品,其目的是為了擴展Netscape Navigator功能,而開發的一種可以嵌入Web頁面中的基于對象和事件驅動的解釋性語言;而Java是SUN Microsystems公司推出的新一代面向對象的程序設計語言,特別適合于Internet應用程序開發。實際上,javascript最初的名字并不是javascript,而是LiveScript,名字中的“Java”是經過SUN Microsystems公司授權的。
二、javascript是基于對象的,它是一種腳本語言,是一種基于對象和事件驅動的編程語言,因而它本身提供了非常豐富的內部對象供設計人員使用。而Java是面向對象的,即Java是一種真正的面向對象的語言,即使是開發簡單的程序也必須設計對象。???
三、javascript與Java嵌入方式不一樣。在HTML文檔中,兩種編程語言的標識不同,javascript使用<script></script>來標識,而Java使用Applet來標識。???
四、javascript與Java在瀏覽器中所執行的方式不一樣。javascript是一種解釋性編程語言,其源代碼在發往客戶端執行之前不需經過編譯,而是將文本格式的字符代碼發送給客戶,即javascript語句本身隨Web頁面一起下載下來,由瀏覽器解釋執行。而Java的源代碼在傳遞到客戶端執行之前,必須經過編譯,因而客戶端上必須具有相應平臺上的仿真器或解釋器,它可以通過編譯器或解釋器實現獨立于某個特定的平臺編譯代碼。???
五、javascript與Java代碼格式不一樣。javascript的代碼是一種謀咀址格式,可以直接嵌入HTML文檔中,并且可動態裝載,編寫HTML文檔就像編輯文本文件一樣方便,其獨立文件的格式為*.js。Java是一種與HTML無關的格式,必須通過像HTML中引用外媒體那么進行裝載,其代碼以字節代碼的形式保存在獨立的文檔中,其獨立文件的格式為*.class。???
六、javascript與Java所采取的變量是不一樣的。javascript中的變量聲明采用弱類型,即變量在使用前不需作聲明,而是解釋器在運行時檢查其數據類型。Java采用強類型變量檢查,即所有變量在編譯之前必須作聲明。???
七、javascript采用動態聯編,即javascript的對象引用在運行時進行檢查。Java采用靜態聯編,即Java的對象引用必須在編譯時的進行,以使編譯器能夠實現強類型檢查。???
八、javascript不直接對文本和圖形進行操作,它在Web頁面中與HTML元素組合一起發揮作用,但它可以控制瀏覽器,讓瀏覽器直接對文本和圖形進行處理。而Java則可以直接對文本和圖形進行操作
追逐959500 提問者
追逐959500 提問者 回復 追逐959500 提問者
一般認為,當時 Netscape 之所以將 LiveScript 命名為 JavaScript,是因為 Java 是當時最流行的編程語言,帶有 "Java" 的名字有助于這門新生語言的傳播。 ? ? ? ? 它們的相同之處包括: ? ? ?
它們的語法和 C 語言都很相似;
它們都是面向對象的(雖然實現的方式略有不同);
JavaScript 在設計時參照了 Java 的命名規則;
它們的不同之處包括: ? ? ?
JavaScript 是動態類型語言,而 Java 是靜態類型語言;
JavaScript 是弱類型的,Java 屬于強類型;
JavaScript 的面向對象是基于原型的(prototype-based)實現的,Java 是基于類(class-based)的;
JavaScript 除了長得和 Java 比較像之外,語言風格相去甚遠。JavaScript 在設計時所參考的對象不包括 Java,而包括了像 Self 和 Scheme 這樣的語言。
舉報
JavaScript做為一名Web工程師的必備技術,本教程讓您快速入門
1 回答java和JavaScript有什么關系?
1 回答Java和javascript的關系
3 回答不能使用JavaScript關鍵詞與JavaScript保留字
4 回答不能使用JavaScript關鍵詞與JavaScript保留字。是什么意思?
3 回答外部與內部的關系
Copyright ? 2025 imooc.com All Rights Reserved | 京ICP備12003892號-11 京公網安備11010802030151號
購課補貼聯系客服咨詢優惠詳情
慕課網APP您的移動學習伙伴
掃描二維碼關注慕課網微信公眾號
2016-12-17
關于java和javascript的關系,我曾在一個論壇上看過這樣一句話,java和javascript的關系,就好比雷鋒和雷峰塔的關系,實在是經典!
因為名字的關系,總是有人誤以為Javascript是Java的一個子集,或者必然會存在一些關系。但非常讓大家失望,這兩種編程語言除了名字開頭相同之外,沒有其它內在的關系!
什么是Javascript?
我在上一篇Javascript簡介中已經介紹了什么是Javascript,它是運行在瀏覽器中的一種腳本語言,在web頁面中,Javascript可謂是無所不能:
可以操作HTML,提供了一種運行時改變HTML的工具
可以附加并執行事件,符合面向事件編程的思想
數據驗證功能,在提交表單時對表單數據進行合法性驗證
對客戶瀏覽器的操作,前進、后退、刷新、跳轉、打開新窗口、打印等
可以創建并使用Cookies
什么是Java呢?
Java是Sun公司推出的一種編程語言。它是一種通過解釋方式來執行的語言,語法規則和C++類似。同時,Java也是一種跨平臺的程序設計語言。用Java語言編寫的程序叫做“Applet”(小應用程序),用編譯器將它編譯成類文件后,將它存在WWW頁面中,并在HTML檔上作好相應標記,用戶端只要裝上Java的客戶軟件就可以在網上直接運行“Applet”。
Java非常適合于企業網絡和Internet環境,現在已成為Internet中最受歡迎、最有影響的編程語言之一。 Java有許多值得稱道的優點,如簡單、面向對象、分布式、解釋性、可靠、安全、結構中立性、可移植性、高性能、多線程、動態性等。Java擯棄了C++中各種弊大于利的功能和許多很少用到的功能。 Jave可以運行與任何微處理器,用Java開發的程序可以在網絡上傳輸,并運行于任何客戶機上。
Javascript名字的由來
JavaScript最早是被稱為Mocha(魔卡)的,這是這個項目的代碼名。這個名字一直用到Netscape2.0 beta 2發布之前(95.11.04)——包括在beta 1中彈出的錯誤框上,還可以看到Mocha的名字。不過,早在此前的9月18號,netscape就已經發布消息將在LiveWire中啟用一種服務器端腳本(未提及名稱)。又因為我們前面提到的“前后端通用腳本”的設計,該語言在beta 2發布時就使用了內部名稱LiveScript。
但同樣混亂的事情是,事實上這時Netscape已經決定將該語言命名為“JavaScript”。因此在beta 2的發布備忘中該語言稱為JavaScript,而界面上卻從Mocha改為了LiveScript。這一局面一直持續到12月4日,netscape與sun共同發布聲明,正式啟用了JavaScript這個名字。隨后beta 4發布(95.12.20),界面和文檔上就統一了。
所以事實上“LiveScript”這個名字可以考證的生命周期,也就只有一個月的時間(在95.11.04- 12.04)。但Mocha畢竟只是項目代碼名,而非產品名,所以后來人們追溯JavaScript的歷史,大多只提到LiveScript為止。
Javascript和Java的區別
一、javascript與Java是由不同的公司開發的不同產品。javascript是Netscape公司的產品,其目的是為了擴展Netscape Navigator功能,而開發的一種可以嵌入Web頁面中的基于對象和事件驅動的解釋性語言;而Java是SUN Microsystems公司推出的新一代面向對象的程序設計語言,特別適合于Internet應用程序開發。實際上,javascript最初的名字并不是javascript,而是LiveScript,名字中的“Java”是經過SUN Microsystems公司授權的。
二、javascript是基于對象的,它是一種腳本語言,是一種基于對象和事件驅動的編程語言,因而它本身提供了非常豐富的內部對象供設計人員使用。而Java是面向對象的,即Java是一種真正的面向對象的語言,即使是開發簡單的程序也必須設計對象。???
三、javascript與Java嵌入方式不一樣。在HTML文檔中,兩種編程語言的標識不同,javascript使用<script></script>來標識,而Java使用Applet來標識。???
四、javascript與Java在瀏覽器中所執行的方式不一樣。javascript是一種解釋性編程語言,其源代碼在發往客戶端執行之前不需經過編譯,而是將文本格式的字符代碼發送給客戶,即javascript語句本身隨Web頁面一起下載下來,由瀏覽器解釋執行。而Java的源代碼在傳遞到客戶端執行之前,必須經過編譯,因而客戶端上必須具有相應平臺上的仿真器或解釋器,它可以通過編譯器或解釋器實現獨立于某個特定的平臺編譯代碼。???
五、javascript與Java代碼格式不一樣。javascript的代碼是一種謀咀址格式,可以直接嵌入HTML文檔中,并且可動態裝載,編寫HTML文檔就像編輯文本文件一樣方便,其獨立文件的格式為*.js。Java是一種與HTML無關的格式,必須通過像HTML中引用外媒體那么進行裝載,其代碼以字節代碼的形式保存在獨立的文檔中,其獨立文件的格式為*.class。???
六、javascript與Java所采取的變量是不一樣的。javascript中的變量聲明采用弱類型,即變量在使用前不需作聲明,而是解釋器在運行時檢查其數據類型。Java采用強類型變量檢查,即所有變量在編譯之前必須作聲明。???
七、javascript采用動態聯編,即javascript的對象引用在運行時進行檢查。Java采用靜態聯編,即Java的對象引用必須在編譯時的進行,以使編譯器能夠實現強類型檢查。???
八、javascript不直接對文本和圖形進行操作,它在Web頁面中與HTML元素組合一起發揮作用,但它可以控制瀏覽器,讓瀏覽器直接對文本和圖形進行處理。而Java則可以直接對文本和圖形進行操作
2016-12-17
一般認為,當時 Netscape 之所以將 LiveScript 命名為 JavaScript,是因為 Java 是當時最流行的編程語言,帶有 "Java" 的名字有助于這門新生語言的傳播。 ? ? ? ?
它們的相同之處包括: ? ? ?
它們的語法和 C 語言都很相似;
它們都是面向對象的(雖然實現的方式略有不同);
JavaScript 在設計時參照了 Java 的命名規則;
它們的不同之處包括: ? ? ?
JavaScript 是動態類型語言,而 Java 是靜態類型語言;
JavaScript 是弱類型的,Java 屬于強類型;
JavaScript 的面向對象是基于原型的(prototype-based)實現的,Java 是基于類(class-based)的;
JavaScript 除了長得和 Java 比較像之外,語言風格相去甚遠。JavaScript 在設計時所參考的對象不包括 Java,而包括了像 Self 和 Scheme 這樣的語言。