javascript|初學|資料|資料結構
JavaScript提供指令碼語言的編程與C++非常相似,它只是去掉了C語言中有關指標等容易產生的錯誤,並提供了功能強大的類庫。對於已經具備C++或C語言的人來說,學習JavaScript指令碼語言是一件非常輕鬆愉快的事。
一、JavaScript代碼的加入
JavaScript的指令碼包括在HTML中,它成為HTML文檔的一部分。與HTML標識相結合,構成了一個功能強大的Internet網上程式設計語言。可以直接將JavaScript指令碼加入文檔:
<Script Language ="JavaScript">
JavaScript語言代碼;
JavaScript 語言代碼;
....
</Script>
說明:
通過標識<Script>...</Script>指明JavaScript指令碼原始碼將放入其間。
通過屬性Language ="JavaScript"說明標識中是使用的何種語言,這裡是JavaScript語言, 表示在JavaScript中使用的語言。
下面是將JavaScript指令碼加入Web文檔中的例子:
Test2.html
<HTML>
<Head>
<Script Language ="JavaScript">
document. Write("網頁教學網歡迎您");
document. close();
</Script>
</Head>
</HTML>
在瀏覽器的視窗中調用test2.html,則顯示“這是賽迪網互動學校”字串。
說明:
Document. write()是文檔對象的輸出函數,其功能是將括弧中的字元或變數值輸出到視窗;document. close()是將輸出關閉。
可將<Script>...</Script>標識放入head>.. </Head>或<Body> ...</Body>之間。將JavaScript標識放置<Head>... </Head>在頭部之間,使之在首頁和其餘部分代碼之前裝載,從而可使代碼的功能更強大;可以將JavaScript標識放置在<Body>... </Body>主體之間以實現某些部分動態地建立文檔。
二、基礎資料型別 (Elementary Data Type)
JavaScript指令碼語言同其它語言一樣,有它自身的基礎資料型別 (Elementary Data Type)、運算式和算術運算子以及程式的基本架構結構。JavaScript提供了四種基本的資料類型用來處理數字和文字, 而變數提供存放資訊的地方, 運算式則可以完成較複雜的資訊處理。
1、基礎資料型別 (Elementary Data Type)
在JavaScript中四種基本的資料類型:數值(整數和實數)、字串型(用“”號或‘’括起來的字元或數值)、布爾型(使True或False表示)和空值。在JavaScript的基本類型中的資料可以是常量,也可以變數。由於JavaScript採用弱類型的形式,因而一個資料的變數或常量不必首先作聲明,而是在使用或賦值時確定其資料的類型的。當然也可以先聲明該資料的類型,它是通過在賦值時自動說明其資料類型的。
2、常量
整型常量
JavaScript的常量通常又稱字面常量,它是不能改變的資料。其整型常量可以使用十六進位、八進位和十進位表示其值。
實型常量
實型常量是由整數部分加小數部分表示,如12.32、193.98 。可以使用科學或標準方法表示:5E7、4e5等。
布爾值
布爾常量只有兩種狀態:True或False。 它主要用來說明或代表一種狀態或標誌,以說明操作流程。它與C++是不一樣的,C++可以用1或0表示其狀態,而JavaScript只能用True或False表示其狀態。
字元型常量
使用單引號(‘)或雙引號(“)括起來的一個或幾個字元。如 "This is a book of JavaScript "、"3245"、"ewrt234234" 等。
空值
JavaScript中有一個空值null,表示什麼也沒有。如試圖引用沒有定義的變數,則返回一個Null值。
特殊字元
同C語言一樣,JavaScript中同樣以有些以反斜線(/)開頭的不可顯示的特殊字元。通常稱為控制字元。
3、變數
變數的主要作用是存取資料、提供存放資訊的容器。對於變數必須明確變數的命名、變數的類型、變數的聲明及其變數的範圍。
變數的命名
JavaScript中的變數命名同其電腦語言非常相似,這裡要注意以下兩點:
A、必須是一個有效變數,即變數以字母開頭,中間可以出現數字如test1、text2等。除底線(-)作為連字號外,變數名稱不能有空格、(+)、(-)、(,)或其它符號。
B、不能使用JavaScript中的關鍵字作為變數。
在JavaScript中定義了40多個類鍵字,這些關鍵是JavaScript內部使用的,不能作為變數的名稱。如Var、int、double、true不能作為變數的名稱。
在對變數命名時,最好把變數的意義與其代表的意思對應起來,以免出現錯誤。
變數的類型
在JavaScript中,變數可以用命令Var作聲明:
var mytest;
該例子定義了一個mytest變數。但沒有賦予它的值。
Var mytest=”This is a book”
該例子定義了一個mytest變數, 同時賦予了它的值。
在JavaScript中,變數以可以不作聲明,而在使用時再根據資料的類型來確其變數的類型。
如:
x=100
y="125"
xy= True
cost=19.5等。
其中x整數,y為字串,xy為布爾型,cost為實型。
變數的聲明及其範圍
JavaScript變數可以在使用前先作聲明,並可賦值。通過使用var關鍵字對變數作聲明。對變數作聲明的最大好處就是能及時發現代碼中的錯誤;因為JavaScript是採用動態編譯的,而動態編譯是不易發現代碼中的錯誤,特別是變數命名的方面。
對於變數還有一個重要性──那就是變數的範圍。在JavaScript中同樣有全域變數和局部變數。全域變數是定義在所有函數體之外,其作用範圍是整個函數;而局部變數是定義在函數體之內,只對其該函數是可見的,而對其它函數則是不可見的。
三、運算式和運算子
1、運算式
在定義完變數後,就可以對它們進行賦值、改變、計算等一系列操作,這一過程通常又叫稱一個叫運算式來完成,可以說它是變數、常量、布爾及運算子的集合,因此運算式可以分為算術表述式、字串運算式、賦值運算式以及布林運算式等。
2、運算子
運算子完成操作的一系列符號,在JavaScript中有算術運算子,如+、-、*、/等;有比較子如!=、==等; 有邏輯布林運算子如!(取反)、|、||; 有字串運算如+ 、 +=等。
在JavaScript主要有雙目運算子和單目運算子。其雙目運算子由下列組成:
運算元1 運算子 運算元2
即由兩個運算元和一個運算子組成。如50+40、"This"+"that"等。單目運算子,只需一個運算元,其運算子可在前或後。
(1)算術運算子
JavaScript中的算術運算子有單目運算子和雙目運算子。
雙目運算子:
+(加) 、-(減)、 *(乘)、 /(除)、 %(模數) 、|(按位或)、&(按位與)、<<(左移)、 >>(右移)、 >>>(右移,零填充)。
單目運算子:
-(取反)、~(取補)、++(遞加1)、--(遞減1)。
(2)比較子
比較子它的基本操作過程是,首先對它的運算元進行比較,爾後再返回一個true或False值,有8個比較子:
<(小於)、>(大於)、<=(小於等於)、>=(大於等於)、==(等於)、!=(不等於)。
(3)布爾邏輯運算子
在JavaScript中增加了幾個布爾邏輯運算子:
!(取反)、&=(與之後賦值)、 &(邏輯與)、 |=(或之後賦值)、 |(邏輯或)、 ^=(異或之後賦值)、 ^(邏輯異或)、 ?:(三目操作符)、||(或)、==(等於)、|=(不等於)。
其中三目操作符主要格式如下:
運算元?結果1:結果2
若運算元的結果為真,則表述式的結果為結果1,否則為結果2。
四、範例
下面是一個跑馬燈效果的JavaScript文檔。
Test2_1.html
<html>
<head>
<script Language="JavaScript">
var msg="這是一個跑馬燈效果的JavaScript文檔";
var interval = 100;
var spacelen = 120;
var space10=" ";
var seq=0;
function Scroll() {
len = msg.length;
window.status = msg.substring(0, seq+1);
seq++;
if ( seq >= len ) {
seq = spacelen;
window.setTimeout("Scroll2();", interval );
}
else
window.setTimeout("Scroll();", interval );
}
function Scroll2() {
var out="";
for (i=1; i<=spacelen/space10.length; i++) out +=
space10;
out = out + msg;
len=out.length;
window.status=out.substring(seq, len);
seq++;
if ( seq >= len ) { seq = 0; };
window.setTimeout("Scroll2();", interval );
}
Scroll();
</script>
<body>
</body>
</html>
本文介紹了JavaScript指令碼是如何加入Web頁面, 並學習了JavaScript語言中的基礎資料型別 (Elementary Data Type)、變數、常量、操作運算子等。可以看出,對於已經掌握C++語言的人來說,學習JavaScript真是一件非常輕鬆愉快的事。