javascript不是基于java的,它們是兩套完全不同的語(yǔ)言架構(gòu)。Java是介于解釋型和編譯型語(yǔ)言之間的一種語(yǔ)言,java的源代碼在傳遞到客戶端執(zhí)行之前,必須經(jīng)過(guò)編譯,通過(guò)相應(yīng)平臺(tái)上的解釋器,實(shí)現(xiàn)獨(dú)立于某個(gè)特定的平臺(tái)編譯代碼的束縛;而JavaScript是一種解釋性編程語(yǔ)言,其源代碼在發(fā)往客戶執(zhí)行之前不需經(jīng)過(guò)編譯,而是將文本格式的字符代碼發(fā)送給客戶編由瀏覽器解釋執(zhí)行。
前端(vue)入門(mén)到精通課程:進(jìn)入學(xué)習(xí)
Apipost = Postman + Swagger + Mock + Jmeter 超好用的API調(diào)試工具:點(diǎn)擊使用
本教程操作環(huán)境:windows7系統(tǒng)、javascript1.8.5版、Dell G3電腦。
javascript不是基于java的,雖然,Java和javascript都是編程語(yǔ)言的一種,但它們是兩套完全不同的語(yǔ)言架構(gòu)。
Java是SUN公司推出的新一代面向?qū)ο蟮某绦蛟O(shè)計(jì)語(yǔ)言、一種編程語(yǔ)言,特別適合于Internet 應(yīng)用程序開(kāi)發(fā)。它是一種通過(guò)解釋方式來(lái)執(zhí)行的語(yǔ)言,語(yǔ)法規(guī)則和C++類(lèi)似。
JavaScript是Netscape公司的產(chǎn)品,其目的是為了擴(kuò)展Netscape Navigator功能,而開(kāi)發(fā)的一種可以嵌入Web頁(yè)面中的基于對(duì)象和事件驅(qū)動(dòng)的解釋性語(yǔ)言;是對(duì) ECMA 262 語(yǔ)言規(guī)范的一種實(shí)現(xiàn)。
java和javascript外形字母非常常像的原因
一般認(rèn)為,當(dāng)時(shí) Netscape 之所以將 LiveScript 命名為 JavaScript,是因?yàn)?Java 是當(dāng)時(shí)最流行的編程語(yǔ)言,帶有 "Java" 的名字有助于這門(mén)新生語(yǔ)言的傳播。
說(shuō)白了這不就是現(xiàn)在典型的蹭熱點(diǎn)么?
很多Java程序員想學(xué)門(mén)腳本語(yǔ)言,一看它怎么和Java這么像,很有親切感,那干脆就學(xué)它了。
JavaScrip蹭了Java的熱點(diǎn),從而對(duì)其發(fā)展有了很大的幫助,當(dāng)然其語(yǔ)言本身也很優(yōu)秀,慢慢地也得到了大眾的認(rèn)可。
Java 和 JavaScript 的相同之處:
-
它們的語(yǔ)法和 C 語(yǔ)言都很相似;
-
它們都是面向?qū)ο蟮模m然實(shí)現(xiàn)的方式略有不同);
-
JavaScript 在設(shè)計(jì)時(shí)參照了 Java 的命名規(guī)則;
javascript和java的區(qū)別
1、javascript與Java是由不同的公司開(kāi)發(fā)的不同產(chǎn)品。
javascript是Netscape公司的產(chǎn)品,其目的是為了擴(kuò)展Netscape Navigator功能,而開(kāi)發(fā)的一種可以嵌入Web頁(yè)面中的基于對(duì)象和事件驅(qū)動(dòng)的解釋性語(yǔ)言;
而Java是SUN Microsystems公司推出的新一代面向?qū)ο蟮某绦蛟O(shè)計(jì)語(yǔ)言,特別適合于Internet應(yīng)用程序開(kāi)發(fā)。實(shí)際上,javascript最初的名字并不是javascript,而是LiveScript,名字中的“Java”是經(jīng)過(guò)SUN Microsystems公司授權(quán)的。
2、java和JavaScript本質(zhì)不一樣
javascript是基于對(duì)象的,它是一種腳本語(yǔ)言,是一種基于對(duì)象和事件驅(qū)動(dòng)的編程語(yǔ)言,因而它本身提供了非常豐富的內(nèi)部對(duì)象供設(shè)計(jì)人員使用。而Java是面向?qū)ο蟮?,即Java是一種真正的面向?qū)ο蟮恼Z(yǔ)言,即使是開(kāi)發(fā)簡(jiǎn)單的程序也必須設(shè)計(jì)對(duì)象。
3、javascript與Java在瀏覽器中所執(zhí)行的方式不一樣
javascript是一種解釋性編程語(yǔ)言,其源代碼在發(fā)往客戶端執(zhí)行之前不需經(jīng)過(guò)編譯,而是將文本格式的字符代碼發(fā)送給客戶,即javascript語(yǔ)句本身隨Web頁(yè)面一起下載下來(lái),由瀏覽器解釋執(zhí)行。
而Java的源代碼在傳遞到客戶端執(zhí)行之前,必須經(jīng)過(guò)編譯,因而客戶端上必須具有相應(yīng)平臺(tái)上的仿真器或解釋器,它可以通過(guò)編譯器或解釋器實(shí)現(xiàn)獨(dú)立于某個(gè)特定的平臺(tái)編譯代碼。
4、java主要在服務(wù)端運(yùn)行;javascript主要運(yùn)行在客戶端瀏覽器中
5、javascript與Java所采取的變量是不一樣的
javascript中的變量聲明采用弱類(lèi)型,即變量在使用前不需作聲明,而是解釋器在運(yùn)行時(shí)檢查其數(shù)據(jù)類(lèi)型。Java采用強(qiáng)類(lèi)型變量檢查,即所有變量在編譯之前必須作聲明。
6、聯(lián)編方式不同
javascript采用動(dòng)態(tài)聯(lián)編,即javascript的對(duì)象引用在運(yùn)行時(shí)進(jìn)行檢查。Java采用靜態(tài)聯(lián)編,即Java的對(duì)象引用必須在編譯時(shí)的進(jìn)行,以使編譯器能夠?qū)崿F(xiàn)強(qiáng)類(lèi)型檢查。
7、javascript不直接對(duì)文本和圖形進(jìn)行操作,它在Web頁(yè)面中與HTML元素組合一起發(fā)揮作用,但它可以控制瀏覽器,讓瀏覽器直接對(duì)文本和圖形進(jìn)行處理。而Java則可以直接對(duì)文本和圖形進(jìn)行操作。
8、Java的語(yǔ)法規(guī)則比JavaScript要嚴(yán)格的多,功能要強(qiáng)大的多。
9、java語(yǔ)言的代碼是一種和HTML沒(méi)有關(guān)系的語(yǔ)言;javascript語(yǔ)言的代碼是一種文本字符格式,可以直接嵌入HTML文檔中,并且可動(dòng)態(tài)加載。
10、兩者的用途也不一樣
java廣泛應(yīng)用于個(gè)人PC、數(shù)據(jù)中心、游戲控制臺(tái)、科學(xué)超級(jí)計(jì)算機(jī)、移動(dòng)電話和互聯(lián)網(wǎng)等。
而Javascript的用途是:
1).嵌入動(dòng)態(tài)文本于HTML頁(yè)面;
2).對(duì)瀏覽器事件做出響應(yīng);
3).讀寫(xiě)HTML元素;
4).在數(shù)據(jù)被提交到服務(wù)器之前驗(yàn)證數(shù)據(jù);
5).檢測(cè)訪客的瀏覽器信息;
6).控制cookies,包括創(chuàng)建和修改等。
說(shuō)明:
JavaScript 除了長(zhǎng)得和 Java 比較像之外,語(yǔ)言風(fēng)格相去甚遠(yuǎn)。JavaScript 在設(shè)計(jì)時(shí)所參考的對(duì)象不包括 Java,而包括了像 Self 和 Scheme 這樣的語(yǔ)言。
【