JavaScript 是網(wǎng)景(Netscape)公司開發(fā)的一種基于客戶端瀏覽器、面向(基于)對象、事件驅(qū)動式的網(wǎng)頁腳本語言。JavaScript語言的前身叫作Livescript。
- 簡單、易學(xué)、易用;
- 跨平臺;IE、Navigator
- 符合ECMA(歐洲計(jì)算機(jī)制造協(xié)會)標(biāo)準(zhǔn),可移植;
- 事件驅(qū)動式的腳本程序設(shè)計(jì)思想;
- 動態(tài)、交互式的操作方式。
- 交互式操作;
- 表單驗(yàn)證;
- 網(wǎng)頁特效;
- Web游戲
- 服務(wù)器腳本開發(fā)等。
- JavaScript的編寫環(huán)境:文本編輯器
- JavaScript的執(zhí)行平臺:Web瀏覽器
- JavaScript的執(zhí)行方式:解釋執(zhí)行(由上而下)
- JavaScript的版本:JavaScript1.0——JavaScript1.4
- 瀏覽器對JavaScript的支持:
- JavaScript/IE3.0、JavaScript1.2/IE4.0;
- 微軟允許用戶自行設(shè)置對JavaScript處理模式。
- JavaScript與Java、VBScript、JScript的關(guān)系:
JavaScript與Java的區(qū)別體現(xiàn)在:
首先,它們是兩個公司開
發(fā)的不同的兩個產(chǎn)品,Java是SUN公司推出的新一代面向?qū)ο蟮某绦蛟O(shè)計(jì)語言,特別適合于Internet應(yīng)用程序開發(fā);而
JavaScript是Netscape公司的產(chǎn)品,其目的是為了擴(kuò)展Netscape
Navigator功能而開發(fā)的一種可以嵌入Web頁面中的基于對象和事件驅(qū)動的解釋性語言。
其次,JavaScript是基于對象的,
而Java是面向?qū)ο蟮模碕ava是一種真正的面向?qū)ο蟮恼Z言,即使是開發(fā)簡單的程序,必須設(shè)計(jì)對象。
JavaScript是種腳本語言,它可以用來制作與網(wǎng)絡(luò)無關(guān)的,與用戶交互作用的復(fù)雜軟件。它是一種基于對象和事件驅(qū)動的編程語言。因而它本身提供了非
常豐富的內(nèi)部對象供設(shè)計(jì)人員使用。
第三,兩種語言在其瀏覽器中所執(zhí)行的方式不一樣。Java的源代碼在傳遞到客戶端執(zhí)行之前,必須經(jīng)過編
譯,因而客戶端上必須具有相應(yīng)平臺上的仿真器或解釋
器,它可以通過編譯器或解釋器實(shí)現(xiàn)獨(dú)立于某個特定的平臺編譯代碼的束縛。JavaScript是一種解釋性編程語言,其源代碼在發(fā)往客戶端執(zhí)行之前不需經(jīng)
過編譯,而是將文本格式的字符代碼發(fā)送給客戶,由瀏覽器解釋執(zhí)行。
第四,兩種語言所采取的變量是不一樣的。Java采用強(qiáng)類型變量檢查,即所有變量在編譯之前必須作聲明。JavaScript中變量聲明,采用其弱類型。即變量在使用前不需作聲明,而是解釋器在運(yùn)行時檢查其數(shù)據(jù)類型。
第
五,代碼格式不一樣。Java是一種與HTML無關(guān)的格式,必須通過像HTML中引用外媒體那么進(jìn)行裝載,其代碼以字節(jié)代碼的形式保存在獨(dú)立的文檔中。
JavaScript的代碼是一種文本字符格式,可以直接嵌入HTML文檔中,并且可動態(tài)裝載。編寫HTML文檔就像編輯文本文件一樣方便。
第六,嵌入方式不一樣。在HTML文檔中,兩種編程語言的標(biāo)識不同,JavaScript使用<script>...< /script>來標(biāo)識,而Java使用<applet> ... </applet> 來標(biāo)識。
第七,靜態(tài)綁定和動態(tài)綁定。Java采用靜態(tài)聯(lián)編,即Java的對象引用必須在編譯時的進(jìn)行,以使編譯器能夠?qū)崿F(xiàn)強(qiáng)類型檢查,如不經(jīng)編譯則就無法實(shí)現(xiàn)對象 引用的檢查。JavaScript采用動態(tài)聯(lián)編,即JavaScript的對象引用在運(yùn)行時進(jìn)行檢查。
- JavaScript區(qū)分大小寫;
- JavaScript腳本程序須嵌入在HTML文件中;
- JavaScript腳本程序中不能包含HTML標(biāo)記代碼;(雙引號)
- 每行寫一條腳本語句;
- 語句末尾可以加分號;
- JavaScript腳本程序可以獨(dú)立保存為一個外部文件,但其中不能包含<script></script>標(biāo)簽。
- <script>
document.write("Hello World!!!");
</script>
- <script language="JavaScript">
document.write("Hello World!!!");
</script>
- <script language="JavaScript" type="text/JavaScript">
document.write("Hello World!!!");
</script>
- <script language="JavaScript1.2">
document.write("Hello World!!!");
</script>
- <script src="hello.js"></script>
注意:document.write("Hello World!!!"); 必須保存為一個外部文件:hello.js
- <script language="JavaScript">
<!--
document.write("Hello World!!!");
-->
</script>
- 使用JavaScript協(xié)議:
<a href="JavaScript:alert('Hello World!!!')">請單擊</a>
<a href="#" onclick="alert('Hello World!!!')">請單擊</a>
<a href="JavaScript://" onclick="alert('Hello World!!!')">請單擊</a>
|
|
- JavaScript的數(shù)據(jù)類型:
- 數(shù)值:整數(shù)、浮點(diǎn)數(shù);
- 邏輯值:布爾值;
- 字符串值:
- 空值:
- 未定義值:
- JavaScript數(shù)據(jù)的表示:
- 整數(shù):由正負(fù)號、數(shù)字構(gòu)成,八進(jìn)制、十進(jìn)制、十六進(jìn)制;
- 浮點(diǎn)數(shù):由正負(fù)號、數(shù)字和小數(shù)點(diǎn)構(gòu)成,常規(guī)記數(shù)法、科學(xué)記數(shù)法;
- 邏輯值:true、false
- 字符串值:單引號、雙引號
- 空值:null
- 未定義值:根本不存在的對象、已定義但沒有賦值的量;
- 布爾常量:true false
- 整數(shù)常量:3721 0007 0xaff(0Xaff)
- 浮點(diǎn)數(shù)常量:3.14 .001 3.721e+3 -3.721E-3
- 字符串常量:"你的E-mail地址有誤!"
- 含轉(zhuǎn)義字符的字符串常量:
轉(zhuǎn)義字符 |
意義 |
\b |
退格(Backspace) |
\f |
換頁(Form feed) |
\n |
換行(New line) |
\r |
返回(Carriage return) |
\t |
制表符(Tab) |
\' |
單引號(') |
\" |
雙引號(") |
\\ |
反斜線(\) |
document.write("我愛\'JavaScript\'")
document.write("文件在c:\\windows\\下")
document.write("<pre>未滿十八歲\n不得進(jìn)入!</pre>")
document.write("未滿十八歲<br>不得進(jìn)入!")
document.alert("密碼不對\n請重新輸入!")
- 數(shù)組常量:
hobby=["聽音樂","看電影"]
hobby[0]、hobby[1]
hobby=["聽音樂",,"看電影",]
hobby[0]、hobby[1]、hobby[2]、hobby[3]
- 變量命名規(guī)則:
- 首字符必須是大寫或小寫的字母或下劃線(_)或美元符($);
- 后續(xù)的字符可以是字母、數(shù)字、下劃線或美元符;
- 變量名稱不能是保留字;
- 長度是任意;
- 區(qū)分大小寫;
- 約定:集中置頂;
使用局部變量;
易于理解; stdId
避免混亂。 usrname usrName
- 聲明變量:
- var stdId;
- var name,sex;
- var total=3721;
- var notNull=true;
- var name="李小龍",sex="先生";
- var i=j=0;
- 變量賦值:
stdId = 2004007;
- 變量作用域:(方式、位置)
- 全局變量:省略var,或在函數(shù)外聲明
- 局部變量:在函數(shù)內(nèi)聲明
- 全局變量可在整個腳本中被使用,可在不同的窗口中相互引用(指定窗口名)
- 例:
<Script>
var langJS = "JavaScript"; //langJS是全局變量
test();
function test() {
var langVBS = "VBScript"; //langVBS是局部變量
document.write("<LI>" + langJS);
document.write("<LI>" + langVBS);
}
document.write("<LI>" + langJS);
document.write("<LI>" + langVBS);
</Script>
|
ExtJS教程-
Hibernate教程-
Struts2 教程-
Lucene教程