新聞中心
2020JS-3D是測(cè)量什么的?
全景項(xiàng)目開(kāi)發(fā)。
創(chuàng)新互聯(lián)建站于2013年開(kāi)始,先為普洱等服務(wù)建站,普洱等地企業(yè),進(jìn)行企業(yè)商務(wù)咨詢(xún)服務(wù)。為普洱企業(yè)網(wǎng)站制作PC+手機(jī)+微官網(wǎng)三網(wǎng)同步一站式服務(wù)解決您的所有建站問(wèn)題。
其實(shí)3D全景其實(shí)并不一定非要使用webgl,css3同樣可以做到,但是考慮到后續(xù)要增加模型動(dòng)畫(huà)的問(wèn)題,所以不得不用webgl了。
WebGL是一種3D繪圖標(biāo)準(zhǔn),這種繪圖技術(shù)標(biāo)準(zhǔn)允許把JavaScript和OpenGLES2。0結(jié)合在一起,通過(guò)增加OpenGLES2。0的一個(gè)JavaScript綁定,WebGL可以為HTML5Canvas提供硬件3D加速渲染。
這樣Web開(kāi)發(fā)人員就可以借助系統(tǒng)顯卡來(lái)在瀏覽器里更流暢地展示3D場(chǎng)景和模型了,還能創(chuàng)建復(fù)雜的導(dǎo)航和數(shù)據(jù)視覺(jué)化。由于webgl是基于OpenGL和JavaScript技術(shù)結(jié)合。
而OpenGL與微軟DirectX存在著競(jìng)爭(zhēng)關(guān)系,而且微軟自身也開(kāi)發(fā)了Silverlight插件,與webgl其實(shí)是類(lèi)似的,所以微軟對(duì)webgl技術(shù)并不支持。
造景師是一款行業(yè)領(lǐng)先的虛擬現(xiàn)實(shí)制作工具,讓您僅需花費(fèi)2-5分鐘即可輕松拼合一幅高質(zhì)量的360度球形或柱形全景圖。
主要用于房產(chǎn)樓盤(pán)、旅游景點(diǎn)、賓館酒店、校園風(fēng)光等場(chǎng)景的三維虛擬漫游效果的網(wǎng)上展示,讓觀(guān)看者無(wú)需親臨現(xiàn)場(chǎng)即可獲得360度身臨其境的感受。
同時(shí)支持魚(yú)眼照片和普通照片的全景拼合,以及全屏模式、批量拼合、自動(dòng)識(shí)別圖像信息、全景圖像明暗自動(dòng)融合等功能。
造型師一款制作Flash三維物體的軟件。它提供了一種在因特網(wǎng)上逼真展示三維物體的嶄新方法。其通過(guò)對(duì)一個(gè)現(xiàn)實(shí)物體進(jìn)行360°環(huán)繞拍攝得到的圖像進(jìn)行自動(dòng)處理,生成360度物體展示模型。
使觀(guān)看者可以通過(guò)網(wǎng)絡(luò)交互地觀(guān)看物體。該軟件可廣泛應(yīng)用于網(wǎng)站建設(shè)、電子商務(wù)、汽車(chē)、房地產(chǎn)、服裝鞋帽、玩具、文物等行業(yè)。
webgl或者說(shuō)three.js的發(fā)展前景怎么樣
webgl和three.js是共生關(guān)系。兩者的區(qū)別如下:
webgl:?HTML5官方的Web 3D解決方案,并且以網(wǎng)頁(yè)形式進(jìn)行展示
three.js:?基于webgl的3D框架,three.js在它的基礎(chǔ)上進(jìn)行了進(jìn)一步的封裝和簡(jiǎn)化開(kāi)發(fā)
所以three.js會(huì)繼承webgl的所有優(yōu)勢(shì),并且更快速地繪制3D立體圖像,高效體現(xiàn)在:
iframe在線(xiàn)分享:無(wú)論是PC端還是手機(jī)端,只需要單擊項(xiàng)目所在鏈接即可運(yùn)行
支持瀏覽器查看:省去了傳統(tǒng)游戲安裝客戶(hù)端的麻煩,同時(shí)保證了項(xiàng)目代碼不被泄露
支持跨平臺(tái)推廣:微信平臺(tái)兼容性的快速發(fā)展,進(jìn)一步降低WebGL 2.0的推廣成本
但常規(guī)的html+css+javascript基礎(chǔ)遠(yuǎn)遠(yuǎn)不夠,要想hold住three.js,需要了解專(zhuān)業(yè)的3d開(kāi)發(fā)知識(shí),這也是學(xué)習(xí)曲線(xiàn)較長(zhǎng)的卡點(diǎn)。
thingjs在線(xiàn)平臺(tái)推薦了解一下,也是基于Webgl的3D類(lèi)庫(kù),這兩年在國(guó)內(nèi)興起,對(duì)于前端開(kāi)發(fā)轉(zhuǎn)3D更加容易,因?yàn)樗?D專(zhuān)業(yè)概念這一過(guò)程都簡(jiǎn)化了,打包成類(lèi)庫(kù),直接用javascript就可以調(diào)用材質(zhì)、燈光、空間變換等概念。
學(xué)習(xí)曲線(xiàn)變短,這是相對(duì)于three.js的一個(gè)很大的優(yōu)勢(shì),代碼變少,開(kāi)發(fā)門(mén)檻降低,出錯(cuò)率更低。
3D的未來(lái)一定是虛擬漫游技術(shù),在消費(fèi)者端以及企業(yè)端,都有發(fā)展前景,我所在的物聯(lián)網(wǎng)行業(yè),3D可視化主要用于遠(yuǎn)程管理和安全監(jiān)控,想看項(xiàng)目案例可登錄官網(wǎng)-資源中心查看。
JavaScrip和Java一樣嗎?
雖然JavaScript與Java有緊密的聯(lián)系,但卻是兩個(gè)公司開(kāi)發(fā)的不同的兩個(gè)產(chǎn)品。Java是SUN公司推出的新一代面向?qū)ο蟮某绦蛟O(shè)計(jì)語(yǔ)言,特別適合于Internet應(yīng)用程序開(kāi)發(fā);而JavaScript是Netscape公司的產(chǎn)品,其目的是為了擴(kuò)展Netscape Navigator功能,而開(kāi)發(fā)的一種可以嵌入Web頁(yè)面中的基于對(duì)象和事件驅(qū)動(dòng)的解釋性語(yǔ)言, 它的前身是Live Script;而Java的前身是Oak語(yǔ)言。下面對(duì)兩種語(yǔ)言間的異同作如下比較:
基于對(duì)象和面向?qū)ο?/p>
Java是一種真正的面向?qū)ο蟮恼Z(yǔ)言,即使是開(kāi)發(fā)簡(jiǎn)單的程序,必須設(shè)計(jì)對(duì)象。
JavaScript是種腳本語(yǔ)言,它可以用來(lái)制作與網(wǎng)絡(luò)無(wú)關(guān)的,與用戶(hù)交互作用的復(fù)雜軟件。它是一種基于對(duì)象(Object Based)和事件驅(qū)動(dòng)(Event Driver)的編程語(yǔ)言。因而它本身提供了非常豐富的內(nèi)部對(duì)象供設(shè)計(jì)人員使用。
解釋和編譯
兩種語(yǔ)言在其瀏覽器中所執(zhí)行的方式不一樣。Java的源代碼在傳遞到客戶(hù)端執(zhí)行之前,必須經(jīng)過(guò)編譯,因而客戶(hù)端上必須具有相應(yīng)平臺(tái)上的仿真器或解釋器,它可以通過(guò)編譯器或解釋器實(shí)現(xiàn)獨(dú)立于某個(gè)特定的平臺(tái)編譯代碼的束縛。
JavaScript是一種解釋性編程語(yǔ)言,其源代碼在發(fā)往客戶(hù)端執(zhí)行之前不需經(jīng)過(guò)編譯,而是將文本格式的字符代碼發(fā)送給客戶(hù)編由瀏覽器解釋執(zhí)行。
強(qiáng)變量和弱變量
兩種語(yǔ)言所采取的變量是不一樣的。
Java采用強(qiáng)類(lèi)型變量檢查,即所有變量在編譯之前必須作聲明。如:
Integer x;
String y;
x=1234;
x=4321;
其中X=1234說(shuō)明是一個(gè)整數(shù),Y=4321說(shuō)明是一個(gè)字符串。
JavaScript中變量聲明,采用其弱類(lèi)型。即變量在使用前不需作聲明,而是解釋器在運(yùn)行時(shí)檢查其數(shù)據(jù)類(lèi)型,如:
x=1234;
y="4321";
前者說(shuō)明x為其數(shù)值型變量,而后者說(shuō)明y為字符型變量。
代碼格式不一樣
Java是一種與HTML無(wú)關(guān)的格式,必須通過(guò)像HTML中引用外媒體那么進(jìn)行裝載,其代碼以字節(jié)代碼的形式保存在獨(dú)立的文檔中。
JavaScript的代碼是一種文本字符格式,可以直接嵌入HTML文檔中,并且可動(dòng)態(tài)裝載。編寫(xiě)HTML文檔就像編輯文本文件一樣方便。
嵌入方式不一樣
在HTML文檔中,兩種編程語(yǔ)言的標(biāo)識(shí)不同,JavaScript使用Script.../Script來(lái)標(biāo)識(shí),而Java使用applet.../applet來(lái)標(biāo)識(shí)。
靜態(tài)聯(lián)編和動(dòng)態(tài)聯(lián)編
Java采用靜態(tài)聯(lián)編,即Java的對(duì)象引用必須在編譯時(shí)的進(jìn)行,以使編譯器能夠?qū)崿F(xiàn)強(qiáng)類(lèi)型檢查。
JavaScript采用動(dòng)態(tài)聯(lián)編,即JavaScript的對(duì)象引用在運(yùn)行時(shí)進(jìn)行檢查,如不經(jīng)編譯則就無(wú)法實(shí)現(xiàn)對(duì)象引用的檢查。
一:JAVA:
Java語(yǔ)言其實(shí)最是誕生于1991年,起初被稱(chēng)為OAK語(yǔ)言,是SUN公司為一些消費(fèi)性電子產(chǎn)品而設(shè)計(jì)的一個(gè)通用環(huán)境。他們最初的目的只是為了開(kāi)發(fā)一種獨(dú)立于平臺(tái)的軟件技術(shù),而且在網(wǎng)絡(luò)出現(xiàn)之前,OAK可以說(shuō)是默默無(wú)聞,甚至差點(diǎn)夭折。但是,網(wǎng)絡(luò)的出現(xiàn)改變了OAK的命運(yùn)。
在Java出現(xiàn)以前。Internet上的信息內(nèi)容都是一些乏味死板的HTML文檔。這對(duì)于那些迷戀于WEB瀏覽的人們來(lái)說(shuō)簡(jiǎn)直不可容忍。他們迫切希望能在WEN中看到一些交互式的內(nèi)容,開(kāi)發(fā)人員也極希望能夠在WEB上創(chuàng)建一類(lèi)無(wú)需考慮軟硬件平臺(tái)就可以執(zhí)行的應(yīng)用程序,當(dāng)然這些程序還要有極大的安全保障。對(duì)于用戶(hù)的這種要求,傳統(tǒng)的編程語(yǔ)言顯得無(wú)能為力,面SUN的工程師敏銳地察覺(jué)到了這一點(diǎn),從1994年起,他們開(kāi)始將OAK技術(shù)應(yīng)用于WEB上,并且開(kāi)發(fā)出了HotJava的第一個(gè)版本。當(dāng)SUN公司1995年正式以Java這個(gè)名字推出的時(shí)候,幾乎所有的WEB開(kāi)發(fā)人員都想到:噢,這正是我想要的。于是Java成了一顆耀眼的明星,丑小鴨一下了變成了白天鵝。
二. Java的定義
Java是一種簡(jiǎn)單的,面象對(duì)象的,分布式的,解釋的,鍵壯的安全的,結(jié)構(gòu)的中立的,可移植的,性能很優(yōu)異的多線(xiàn)程的,動(dòng)態(tài)的語(yǔ)言。
Java的開(kāi)發(fā)環(huán)境有不同的版本,如sun公司的Java Developers Kit, 簡(jiǎn)稱(chēng) JDK。后來(lái)微軟公司推出了支持Java規(guī)范的Microsoft Visual J++ Java開(kāi)發(fā)環(huán)境,簡(jiǎn)稱(chēng) VJ++。
三. Java的特點(diǎn)
1. 平臺(tái)無(wú)關(guān)性
平臺(tái)無(wú)關(guān)性是指Java能運(yùn)行于不同的平臺(tái)。Java引進(jìn)虛擬機(jī) 原理,并運(yùn)行于虛擬機(jī),實(shí)現(xiàn)不同平臺(tái)的Java接口之間。使 用Java編寫(xiě)的程序能在世界范圍內(nèi)共享。Java的數(shù)據(jù)類(lèi)型與 機(jī)器無(wú)關(guān),Java虛擬機(jī)(Java Virtual Machine)是建立在 硬件和操作系統(tǒng)之上,實(shí)現(xiàn)Java二進(jìn)制代碼的解釋執(zhí)行功能, 提供于不同平臺(tái)的接口的。
2. 安全性
Java的編程類(lèi)似C++,學(xué)習(xí)過(guò)C++的讀者將很快掌握J(rèn)ava的精 髓。Java舍棄了C++的指針對(duì)存儲(chǔ)器地址的直接操作,程序 運(yùn)行時(shí),內(nèi)存由操作系統(tǒng)分配,這樣可以避免病毒通過(guò)指 針侵入系統(tǒng)。Java對(duì)程序提供了安全管理器,防止程序的 非法訪(fǎng)問(wèn)。
3. 面向?qū)ο?/p>
Java 吸取了C++面向?qū)ο蟮母拍?將數(shù)據(jù)封裝于類(lèi)中,利用類(lèi) 的優(yōu)點(diǎn),實(shí)現(xiàn)了程序的簡(jiǎn)潔性和便于維護(hù)性。類(lèi)的封裝性、 繼承性等有關(guān)對(duì)象的特性,使程序代碼只需一次編譯,然后 通過(guò)上述特性反復(fù)利用。程序員只需把主要精力用在類(lèi)和接 口的設(shè)計(jì)和應(yīng)用上。Java 提供了眾多的一般對(duì)象的類(lèi),通 過(guò)繼承即可使用父類(lèi)的方法。在 Java 中,類(lèi)的繼承關(guān)系是單一的非多重的,一個(gè)子類(lèi) 只有一個(gè)父類(lèi),子類(lèi)的父類(lèi)又有一個(gè)父類(lèi)。Java 提供的 Object 類(lèi)及其子類(lèi)的繼承關(guān)系如同一棵倒立的樹(shù)形,根類(lèi) 為 Object 類(lèi), Object 類(lèi)功能強(qiáng)大,經(jīng)常會(huì)使用到它及其 它派生的子類(lèi)。
4. 分布式
Java建立在擴(kuò)展TCP/IP網(wǎng)絡(luò)平臺(tái)上。庫(kù)函數(shù)提供了用HTTP和FTP協(xié)議傳送和接受信息的方法。這使得程序員使用網(wǎng)絡(luò)上的文件和使用本機(jī)文件一樣容易。
5. 鍵壯性
Java致力于檢查程序在編譯和運(yùn)行時(shí)的錯(cuò)誤。類(lèi)型檢查幫助檢查出許多開(kāi)發(fā)早期出現(xiàn)的錯(cuò)誤。Java自已操縱內(nèi)存減少了內(nèi)存出錯(cuò)的可能性。Java還實(shí)現(xiàn)了真數(shù)組,避免了覆蓋數(shù)據(jù)的可能。這些功能特征大大提高了開(kāi)發(fā)Java應(yīng)用程序的周期。Java提供: Null指針檢測(cè)、 數(shù)組邊界檢測(cè)、 異常出口、 Byte code校驗(yàn)。
四. Java與C/C++語(yǔ)言
Java提供了一個(gè)功能強(qiáng)大語(yǔ)言的所有功能,但幾乎沒(méi)有一點(diǎn)含混特征。C++安全性不好,但C和C++被大家接受,所以Java設(shè)計(jì)成C++形式,讓大家很容易學(xué)習(xí)。
Java去掉了C++語(yǔ)言的許多功能,讓Java的語(yǔ)言功能很精煉,并增加了一些很有用的功能,如自動(dòng)收集碎片。
Java去掉了以下幾個(gè)C和C++功能:
指針運(yùn)算
結(jié)構(gòu)
typedefs
#define
需要釋放內(nèi)存
這將減少了平常出錯(cuò)的50%。而且,Java很小,整個(gè)解釋器只需215K的RAM。
面象對(duì)象:Java實(shí)現(xiàn)了C++的基本面象對(duì)象技術(shù)并有一些增強(qiáng),(為了語(yǔ)言簡(jiǎn)單,刪除了一些功能)。Java處理數(shù)據(jù)方式和用對(duì)象接口處理對(duì)象數(shù)據(jù)方式一樣。
五. Java與Internet
我們知道,早先的 www 僅可以傳送文本和圖片,Java的出現(xiàn)實(shí)現(xiàn)了互動(dòng)的頁(yè)面,是一次偉大的革命。
Java并不是為 Internet,WWW而設(shè)計(jì)的,它也可以用來(lái)編寫(xiě)?yīng)毩⒌膽?yīng)用程序。Java 是一種面向?qū)ο笳Z(yǔ)言。Java 語(yǔ)言類(lèi)似于 C++ 語(yǔ)言,所以已熟練掌握 C++語(yǔ)言的編程人員,再學(xué)習(xí) Java 語(yǔ)言就容易得多!Java 程序需要編譯。實(shí)際上有兩種 Java 程序:一種 Java 應(yīng)用程序是一個(gè)完整的程序,如 Web 瀏覽器。一種 Java 小應(yīng)用程序是運(yùn)行于 Web 瀏覽器中的一個(gè)程序.
Java程序和它的瀏覽器HotJava,提供了可讓你的瀏覽器運(yùn)行程序的方法。你能從你的瀏覽器里直接播放聲音。你還能播放頁(yè)面里的動(dòng)畫(huà)。Java還能告訴你的瀏覽器怎樣處理新的類(lèi)型文件。當(dāng)我們能在2400 baud線(xiàn)上傳輸視頻圖象時(shí),HotJava將能顯示這些視頻。
當(dāng)今Internet的一大發(fā)展趨勢(shì)是電子商務(wù),而Internet的安全問(wèn)題是必須解決的問(wèn)題,通常大的部門(mén)應(yīng)設(shè)置防火墻,阻止非法侵入。
電子商務(wù)是當(dāng)今的熱門(mén)話(huà)題,然而傳統(tǒng)的編程語(yǔ)言難以勝任電子商務(wù)系統(tǒng),電子商務(wù)要求程序代碼具有基本的要求:安全、可靠、同時(shí)要求能 與運(yùn)行于不同平臺(tái)的機(jī)器的全世界客戶(hù)開(kāi)展業(yè)務(wù)。Java以其強(qiáng)安全性、平臺(tái)無(wú)關(guān)性、硬件結(jié)構(gòu)無(wú)關(guān)性、語(yǔ)言簡(jiǎn)潔同時(shí)面向?qū)ο?,在網(wǎng)絡(luò)編程語(yǔ)言中占據(jù)無(wú)可比擬的優(yōu)勢(shì),成為實(shí)現(xiàn)電子商務(wù)系統(tǒng)的首選語(yǔ)言。
Java程序被放置在Internet服務(wù)器上,當(dāng)用戶(hù)訪(fǎng)問(wèn)服務(wù)器時(shí),Java程序被下載到本地的用戶(hù)機(jī)上,由瀏覽器解釋運(yùn)行。
Internet時(shí)代,造就了我們新的工作和生活方式,其互聯(lián)性、開(kāi)放性和共享信息的模式,打破了傳統(tǒng)信息傳播方式的重重壁壘,為我們帶來(lái)了新的機(jī)遇。隨著計(jì)算機(jī)和信息時(shí)代的到來(lái),人類(lèi)社會(huì)前進(jìn)的腳步在逐漸加快,每一天都有新的事情發(fā)生,每一天都在創(chuàng)造著奇跡。隨著Internet技術(shù)的突飛猛進(jìn),各行各業(yè)都在加入Internet的行業(yè)中來(lái)。無(wú)論從管理方面,還是從商業(yè)角度來(lái)看,Internet都可以帶來(lái)無(wú)限生機(jī)。通過(guò)Internet,可以實(shí)現(xiàn)地區(qū)、集體乃至個(gè)人的連接,從而達(dá)到一種“統(tǒng)一的和諧”。那么怎樣把自己的或公司的信息資源加入到 WWW 服務(wù)器,是廣大用戶(hù)日益關(guān)心的問(wèn)題。采用超鏈技術(shù)(超文本和超媒體技術(shù))是實(shí)現(xiàn)這個(gè)目標(biāo)最簡(jiǎn)單的、最快速的手段和途徑。具體實(shí)現(xiàn)這種手段的支持環(huán)境,那就是HTML超文本標(biāo)識(shí)語(yǔ)言。通過(guò)它們可制作所需的Web網(wǎng)頁(yè)。
通過(guò)超文本(Hyper Text)和超媒體(Hyper Media)技術(shù)結(jié)合超鏈接(Hyper link)的鏈接功能將各種信息組織成網(wǎng)絡(luò)結(jié)構(gòu)(web),構(gòu)成網(wǎng)絡(luò)文檔(Document),實(shí)現(xiàn)Internet上的“漫游”。通過(guò)HTML符號(hào)的描述就可以實(shí)現(xiàn)文字、表格、聲音、圖像、動(dòng)畫(huà)等多媒體信息的檢索。
然而采用這種超鏈技術(shù)存在有一定的缺陷,那就是它只能提供一種靜態(tài)的信息資源,缺少動(dòng)態(tài)的客戶(hù)端與服務(wù)器端的交互。雖然可通過(guò)CGI (Common Gateway Interface)通用網(wǎng)關(guān)接口實(shí)現(xiàn)一定的交互,但由于該方法編程較為復(fù)雜,因而在一段時(shí)間防礙了Internet技術(shù)的發(fā)展。而JavaScript的出現(xiàn),無(wú)凝為Internet網(wǎng)上用戶(hù)帶來(lái)了一線(xiàn)生機(jī)??梢赃@樣說(shuō),JavaScript的出現(xiàn)是時(shí)代的需求,是當(dāng)今的信息時(shí)代造就了JavaScript。
JavaScript的出現(xiàn),它可以使得信息和用戶(hù)之間不僅只是一種顯示和瀏覽的關(guān)系,而是實(shí)現(xiàn)了一種實(shí)時(shí)的、動(dòng)態(tài)的、可交式的表達(dá)能力。從而基于CGI靜態(tài)的HTML頁(yè)面將被可提供動(dòng)態(tài)實(shí)時(shí)信息,并對(duì)客戶(hù)操作進(jìn)行反應(yīng)的Web頁(yè)面的取代。JavaScript腳本正是滿(mǎn)足這種需求而產(chǎn)生的語(yǔ)言。它深受廣泛用戶(hù)的喜愛(ài)的歡迎。它是眾多腳本語(yǔ)言中較為優(yōu)秀的一種,它與WWW的結(jié)合有效地實(shí)現(xiàn)了網(wǎng)絡(luò)計(jì)算和網(wǎng)絡(luò)計(jì)算機(jī)的藍(lán)圖。無(wú)凝Java家族將占領(lǐng)Internet網(wǎng)絡(luò)的主導(dǎo)地位。因此,盡快掌握J(rèn)avaScript腳本語(yǔ)言編程方法是我國(guó)廣大用戶(hù)日益關(guān)心的。
一、什么是JavaScript
JavaScript是一種基于對(duì)象(Object)和事件驅(qū)動(dòng)(Event Driven)并具有安全性能的腳本語(yǔ)言。使用它的目的是與HTML超文本標(biāo)記語(yǔ)言、Java 腳本語(yǔ)言(Java小程序)一起實(shí)現(xiàn)在一個(gè)Web頁(yè)面中鏈接多個(gè)對(duì)象,與Web客戶(hù)交互作用。從而可以開(kāi)發(fā)客戶(hù)端的應(yīng)用程序等。它是通過(guò)嵌入或調(diào)入在標(biāo)準(zhǔn)的HTML語(yǔ)言中實(shí)現(xiàn)的。它的出現(xiàn)彌補(bǔ)了HTML語(yǔ)言的缺陷,它是Java與HTML折衷的選擇,具有以下幾個(gè)基本特點(diǎn):
是一種腳本編寫(xiě)語(yǔ)言
JavaScript是一種腳本語(yǔ)言,它采用小程序段的方式實(shí)現(xiàn)編程。像其它腳本語(yǔ)言一樣,JavaScript同樣已是一種解釋性語(yǔ)言,它提供了一個(gè)易的開(kāi)發(fā)過(guò)程。
它的基本結(jié)構(gòu)形式與C、C++、VB、Delphi十分類(lèi)似。但它不像這些語(yǔ)言一樣,需要先編譯,而是在程序運(yùn)行過(guò)程中被逐行地解釋。它與HTML標(biāo)識(shí)結(jié)合在一起,從而方便用戶(hù)的使用操作。
基于對(duì)象的語(yǔ)言。
JavaScript是一種基于對(duì)象的語(yǔ)言,同時(shí)以可以看作一種面向?qū)ο蟮?。這意味著它能運(yùn)用自己已經(jīng)創(chuàng)建的對(duì)象。因此,許多功能可以來(lái)自于腳本環(huán)境中對(duì)象的方法與腳本的相互作用。
簡(jiǎn)單性
JavaScript的簡(jiǎn)單性主要體現(xiàn)在:首先它是一種基于Java基本語(yǔ)句和控制流之上的簡(jiǎn)單而緊湊的設(shè)計(jì), 從而對(duì)于學(xué)習(xí)Java是一種非常好的過(guò)渡。其次它的變量類(lèi)型是采用弱類(lèi)型,并未使用嚴(yán)格的數(shù)據(jù)類(lèi)型。
安全性
JavaScript是一種安全性語(yǔ)言,它不允許訪(fǎng)問(wèn)本地的硬盤(pán),并不能將數(shù)據(jù)存入到服務(wù)器上,不允許對(duì)網(wǎng)絡(luò)文檔進(jìn)行修改和刪除,只能通過(guò)瀏覽器實(shí)現(xiàn)信息瀏覽或動(dòng)態(tài)交互。從而有效地防止數(shù)據(jù)的丟失。
動(dòng)態(tài)性的
JavaScript是動(dòng)態(tài)的,它可以直接對(duì)用戶(hù)或客戶(hù)輸入做出響應(yīng),無(wú)須經(jīng)過(guò)Web服務(wù)程序。它對(duì)用戶(hù)的反映響應(yīng),是采用以事件驅(qū)動(dòng)的方式進(jìn)行的。所謂事件驅(qū)動(dòng),就是指在主頁(yè)(Home Page)中執(zhí)行了某種操作所產(chǎn)生的動(dòng)作,就稱(chēng)為“事件”(Event)。比如按下鼠標(biāo)、移動(dòng)窗口、選擇菜單等都可以視為事件。當(dāng)事件發(fā)生后,可能會(huì)引起相應(yīng)的事件響應(yīng)。
跨平臺(tái)性
JavaScript是依賴(lài)于瀏覽器本身,與操作環(huán)境無(wú)關(guān),只要能運(yùn)行瀏覽器的計(jì)算機(jī),并支持JavaScript的瀏覽器就可正確執(zhí)行。從而實(shí)現(xiàn)了“編寫(xiě)一次,走遍天下”的夢(mèng)想。
實(shí)際上JavaScript最杰出之處在于可以用很小的程序做大量的事。無(wú)須有高性能的電腦,軟件僅需一個(gè)字處理軟件及一瀏覽器,無(wú)須WEB服務(wù)器通道,通過(guò)自己的電腦即可完成所有的事情。
綜合所述JavaScript 是一種新的描述語(yǔ)言,它可以被箝入到 HTML 的文件之中。 JavaScript語(yǔ)言可以做到回應(yīng)使用者的需求事件 (如: form 的輸入) ,而不用任何的網(wǎng)路來(lái)回傳輸資料,所以當(dāng)一位使用者輸入一項(xiàng)資料時(shí),它不用經(jīng)過(guò)傳給伺服端 (server)處理,再傳回來(lái)的過(guò)程,而直接可以被客戶(hù)端 (client) 的應(yīng)用程式所處理。
JavaScript 和 Java 很類(lèi)似,但到底并不一樣! Java 是一種比 JavaScript 更復(fù)雜許多的程式語(yǔ)言,而 JavaScript 則是相當(dāng)容易了解的語(yǔ)言。JavaScript 創(chuàng)作者可以不那麼注重程式技巧,所以許多 Java 的特性在 Java Script 中并不支援。
二、JavaScript和Java的區(qū)別
雖然JavaScript與Java有緊密的聯(lián)系,但卻是兩個(gè)公司開(kāi)發(fā)的不同的兩個(gè)產(chǎn)品。Java是SUN公司推出的新一代面向?qū)ο蟮某绦蛟O(shè)計(jì)語(yǔ)言,特別適合于Internet應(yīng)用程序開(kāi)發(fā);而JavaScript是Netscape公司的產(chǎn)品,其目的是為了擴(kuò)展Netscape Navigator功能,而開(kāi)發(fā)的一種可以嵌入Web頁(yè)面中的基于對(duì)象和事件驅(qū)動(dòng)的解釋性語(yǔ)言, 它的前身是Live Script;而Java的前身是Oak語(yǔ)言。下面對(duì)兩種語(yǔ)言間的異同作如下比較:
基于對(duì)象和面向?qū)ο?/p>
Java是一種真正的面向?qū)ο蟮恼Z(yǔ)言,即使是開(kāi)發(fā)簡(jiǎn)單的程序,必須設(shè)計(jì)對(duì)象。
JavaScript是種腳本語(yǔ)言,它可以用來(lái)制作與網(wǎng)絡(luò)無(wú)關(guān)的,與用戶(hù)交互作用的復(fù)雜軟件。它是一種基于對(duì)象(Object Based)和事件驅(qū)動(dòng)(Event Driver)的編程語(yǔ)言。因而它本身提供了非常豐富的內(nèi)部對(duì)象供設(shè)計(jì)人員使用。
解釋和編譯
兩種語(yǔ)言在其瀏覽器中所執(zhí)行的方式不一樣。Java的源代碼在傳遞到客戶(hù)端執(zhí)行之前,必須經(jīng)過(guò)編譯,因而客戶(hù)端上必須具有相應(yīng)平臺(tái)上的仿真器或解釋器,它可以通過(guò)編譯器或解釋器實(shí)現(xiàn)獨(dú)立于某個(gè)特定的平臺(tái)編譯代碼的束縛。
JavaScript是一種解釋性編程語(yǔ)言,其源代碼在發(fā)往客戶(hù)端執(zhí)行之前不需經(jīng)過(guò)編譯,而是將文本格式的字符代碼發(fā)送給客戶(hù)編由瀏覽器解釋執(zhí)行。
強(qiáng)變量和弱變量
兩種語(yǔ)言所采取的變量是不一樣的。
Java采用強(qiáng)類(lèi)型變量檢查,即所有變量在編譯之前必須作聲明。如:
Integer x;
String y;
x=1234;
x=4321;
其中X=1234說(shuō)明是一個(gè)整數(shù),Y=4321說(shuō)明是一個(gè)字符串。
JavaScript中變量聲明,采用其弱類(lèi)型。即變量在使用前不需作聲明,而是解釋器在運(yùn)行時(shí)檢查其數(shù)據(jù)類(lèi)型,如:
x=1234;
y="4321";
前者說(shuō)明x為其數(shù)值型變量,而后者說(shuō)明y為字符型變量。
代碼格式不一樣
Java是一種與HTML無(wú)關(guān)的格式,必須通過(guò)像HTML中引用外媒體那么進(jìn)行裝載,其代碼以字節(jié)代碼的形式保存在獨(dú)立的文檔中。
JavaScript的代碼是一種文本字符格式,可以直接嵌入HTML文檔中,并且可動(dòng)態(tài)裝載。編寫(xiě)HTML文檔就像編輯文本文件一樣方便。
嵌入方式不一樣
在HTML文檔中,兩種編程語(yǔ)言的標(biāo)識(shí)不同,JavaScript使用Script.../Script來(lái)標(biāo)識(shí),而Java使用applet.../applet來(lái)標(biāo)識(shí)。
靜態(tài)聯(lián)編和動(dòng)態(tài)聯(lián)編
Java采用靜態(tài)聯(lián)編,即Java的對(duì)象引用必須在編譯時(shí)的進(jìn)行,以使編譯器能夠?qū)崿F(xiàn)強(qiáng)類(lèi)型檢查。
JavaScript采用動(dòng)態(tài)聯(lián)編,即JavaScript的對(duì)象引用在運(yùn)行時(shí)進(jìn)行檢查,如不經(jīng)編譯則就無(wú)法實(shí)現(xiàn)對(duì)象引用的檢查。
三、JavaScript程序運(yùn)行環(huán)境
1.Java運(yùn)行環(huán)境
軟件環(huán)境:
Windows 95/98或Windows NT。
Netscape Navigator x.0或Internet Explorer x.0。
用于編輯HTML文檔的字符編輯器(WS、WPS、Notepad、WordPad等)或HTML文檔編輯器。
硬件配置:
首先必須具備運(yùn)行Windows 95/98或Windows NT的基本硬件配置環(huán)境。推薦:
基本內(nèi)存32M。
CRT只少需要256顏色,分辨率在640X480以上。
CPU只少233以上。
鼠標(biāo)和其它外部設(shè)置(根據(jù)需要選用)。
四、編寫(xiě)第一個(gè)JavaScript程序
下面我們通過(guò)一個(gè)例子,編寫(xiě)第一個(gè)JavaScript程序。通過(guò)它可說(shuō)明JavaScript的腳本是怎樣被嵌入到HTML文檔中的。
test1.html文檔:
html
head
Script Language ="JavaScript"
// JavaScript Appears here.
alert("這是第一個(gè)JavaScript例子!");
alert("歡迎你進(jìn)入JavaScript世界!");
alert("今后我們將共同學(xué)習(xí)JavaScript知識(shí)!");
/Script
/Head
/Html
說(shuō)明:
test.html是HTML文檔,其標(biāo)識(shí)格式為標(biāo)準(zhǔn)的HTML格式;
如同HTML標(biāo)識(shí)語(yǔ)言一樣, JavaScript程序代碼是一些可用字處理軟件瀏覽的文本,它在描述頁(yè)面的HTML相關(guān)區(qū)域出現(xiàn)。
JavaScript代碼由 Script Language ="JavaScript".../Script說(shuō)明。在標(biāo)識(shí)Script Language ="JavaScript".../Script之間就可加入JavaScript腳本
alert()是JavaScript的窗口對(duì)象方法,其功能是彈出一個(gè)具有OK對(duì)話(huà)框并顯示()中的字符串
通過(guò)!-- ...//--標(biāo)識(shí)說(shuō)明:若不認(rèn)識(shí)JavaScript代碼的瀏覽器,則所有在其中的標(biāo)識(shí)均被忽略;若認(rèn)識(shí),則執(zhí)行其結(jié)果。使用注釋這是一個(gè)好的編程習(xí)慣,它使其他人可以讀懂你的語(yǔ)言。
JavaScript 以 /Script 標(biāo)簽結(jié)束。
從上面的實(shí)例分析中我們可以看出,編寫(xiě)一個(gè)JavaScript程序確實(shí)非常容易的。
當(dāng)前標(biāo)題:javascript漫游,threejs漫游
網(wǎng)站URL:http://fisionsoft.com.cn/article/dseohgd.html