JavaScript是基於對象的語言。我們知道,對象是由一組資料(JavaScript中稱之為屬性)和施加在這組資料上的方法組成的。同時,JavaScript中還有一些不屬於任何對象的系統函數。本文將簡單介紹JavaScript中一些常用對象的屬性和方法,以及幾個有用的系統函數。
一、串方法
JavaScript有強大的串處理功能,有了這些串方法,才能編寫出豐富多彩的網頁。在這一部分裡,我們將介紹到如何使用與串對象有關的方法和屬性。
1.串對象的length屬性
串對象僅有一個屬性length,這個屬性值表示這個串所包括字元的相對數目。文法為: stringName.length
2.串對象的方法
JavaScript提供了多個串方法以協助控制顯示資訊。串方法可以分為幾個大類,如屬性方法、導航方法等等。下面我們將分類介紹。
(1)屬性方法 串的屬性方法指定了普通文本顯示在螢幕上的方式。它提供了一種理想的方式使首頁變得更有吸引力。
blink() blink()方法引起文本閃爍,文法形式如下: string.blink();
bold() bold()方法使串變為粗體。文法形式如下: string.bold();
fontcolor() fontcolor()方法可以改變單個串的顏色,或者在每次重新裝入頁面或事件發生時,改變顏色。同樣,這個方法也有一個相對應的HTML標識-- fontcolor()的文法是 string.fontcolor(color); 在這裡,color是一種顏色的合法表示。
italics() italics()方法把串變為斜體,以同其餘文字區分開來,italics() 的文法如下: string.italics();
(2)大小寫方法 JavaScript嚴格區分字母的大小寫。為了方便地比較兩個串,就要把它們都轉化為大寫或小寫。串對象的大小寫方法就支援在大小寫之間轉換。
toLowerCase() tolowerCase()方法把一個給定的串中每個字元轉變成小寫狀態。文法形式如下: string=stringValue.toLowerCase();
toUpperCase() 與tolowerCase()方法相反是toUpperCase()方法,它把一個給定串轉變成大寫字串。 string=stringValue.toUpperCase();
(3)操作方法 操作方法提供了許多種在一個文本串內尋找字串的方法,其中包括charAt()、indexO f()、LastIndexOf()和substring()四種方法。我們可以使用這些方法格式化和操作使用者輸入的串變數,其中charAt()和 substring()兩種方法從一個串中抽取一個或多個字元,剩下的兩個方法返回待尋找值的第一個字元在串中出現位置的數字值。
charAt() charAt()方法從一個給定串中返回指定位置的字元。它的使用方法如下: string.charAt(index); 其中index是一個在0和小於串長度之間的一個數(串長度可以通過Length屬性得到),
substring() substring()方法從一個大串中返回它的一個子串。它的文法形式如下: string.substring(indexA,indexB) indexA和indexB兩者都是在0和串長度之間的數字值。它們是串的兩個下標。
indexOf() indexOf()方法返回在一個長串中與指定的串匹配的子串的位置。它從左至右地尋找給定的串,文法形式如下: string.indexOf(searchValue,[fromIndex]); 其中string是indexOf()要在其中尋找searchValue的串,而searc hValue是任何想要尋找的字元或子串。 fromIndex是一個可選項,它指定尋找開始的位置。fromIndex的範圍與charAt()和Subs tring()相似(0到length-1)。它不能大於或等於length,如果沒有指定fromIndex,該方法認為其預設地為0並尋找整個串。 indexOf()的傳回值是searchValue首次出現的第一個字元的位移量(從串的開頭算起)。即使指定了fromIndex,該傳回值仍是相對於串的開頭的(有可能在前面一些的地方出現的se archValue將被忽略)。
lastIndexOf() lastIndexOf()方法與IndexOf()方法類似,只是它從右至左地尋找串。lastIndexOf()仍舊給出被尋找串的首字元位置,而不是末尾字元的位置。 lastIndexOf()方法的文法形式如下: string.Last indexOf(searchValue); searchValue仍是想要尋找的串。
(4)導航方法 使用超文本時會接觸到錨(anchor)和鏈路的概念。錨就如同在網頁中放置的書標(你可以很方便地回到那兒);鏈路是對另一頁面(或相同及不同頁面的錨)的指引。
anchor() anchor()方法用來設定一個錨,它的文法形式很簡單: string.anchor(anchorName); 考察下面的例子: var indexString="Index"; document.writeln(indexString.anchor("anchorName")); 這條語句在螢幕上列印文本Index;anchorName是這個錨真正的名字。像這樣的錨一般被鏈路用來跳轉到頁面中錨的實際位置。
link() link()的功能是跳轉到指定的目標。它相當於標準HTML引用(由HREF屬性指定的超文本引用)。它的文法形式也非常簡單: linkText.link(href) linkText是螢幕上的文本,href屬性不一定是一個錨,它也可以是一個合法的URL引用。下面的例子說明如何用link()來建立直接跳轉到前面建立的錨的鏈路; var indexStirng="Index" document.writeln(indexString.link("#"+"anchorName")+"
") 這條語句在螢幕上列印鏈路格式的文本Index(通常在下面加底線);anchorName是錨的實際的名字。當單擊這條鏈路時,這個錨將出現在瀏覽器使用者視窗的頂部。請注意:要保證在同一文檔內部的錨的引用中加上#號。在加#號的時候,要將它用雙引號括起來並用加號與完整的引用連起來。可以參見前面的例子。如果省略了#號,鏈路的目標就是一個檔案而不是一個錨。單擊這條鏈就會使瀏覽器試圖裝入名為anchorName(在本例中)的檔案。因為這一檔案不存在,瀏覽器將產生Notfound的錯誤資訊。
二、視窗方法
視窗是瀏覽器與使用者互動的介面。利用JavaScript中的視窗方法和屬性,可以建立可控制視窗。在這一部分裡,將介紹一些視窗方法和屬性。
1.預定義視窗(對話方塊)
JavaScript提供三個方法來產生"簡單"的視窗(或對話方塊):alert (),confirm()和promp t()。儘管我們無法控制這些對話方塊的位置,按鈕或大小,但它們提供了初步的機制來提示使用者或接收輸入。以下討論各方法。
alert() alert()方法建立了一個獨立的訊息視窗,文法形式如下: alert("message") 其中"message"是要在提示視窗中顯示的文本串。
confirm() confirm()方法用於進行一個事件之前請求獲得使用者的認可。它給使用者以停止某個事件出現的機會。該方法的文法形式如下: confirm("message") 其中message是一個文本串。
prompt() prompt()方法接收使用者的反饋,使用者可以從鍵盤鍵入資訊,或者如果他們接收一個預設值的話,可以用滑鼠選取。該方法的文法形式如下: prompt("message") 如果想要指定一個預設值,可以用: prompt("message",imputDefault)其中"message"是文本或數字。使用者可以鍵入任何資訊。因此,一個變數雖然希望輸入一個數字進行計算,也可能輸入給它的是文本。如果單擊了Cancel鍵和關閉鍵,pr ompt()返回空值。
2.定製視窗
上面的三種視窗雖然很簡單,但它們有一個共同的缺點是不靈活, 即無法改變它們的大小和風格。下面,我們來討論在JavaScript中如何定製視窗的問題。首先,我們應知道如何建立一個視窗。
open() open()方法將建立一個新視窗。使用該方法建立視窗與選擇File 功能表項目的New Web Bro wser的效果是相似的。該方法的文法形式如下 : windowVar=window.open("URL","windowName") 或者也可以定義一個視窗的屬性: windowVar=window.open("URL","windowName","windowAttribut er")其中WindowName是要建立的視窗的名字。URL是一個文本串,指定當前新視窗建立時要調用的URL。如果沒有指定URL(使用Null 字元串"") ,那麼視窗是空的。 windowName代表該視窗的名字。 windowFeatures是可以賦給視窗的可選屬性,比如一個工具條,位置,目錄,狀態條,菜單條,捲軸,大小可變的能力,寬度和高度(見附表)。設定它們時以逗號為分隔字元,並在最外加上雙引號。
附表
視窗屬性 這些屬性的使用形式如下: feeture=value 其中feature是所要選擇的屬性,value(除了width和height兩種屬性外)或是yes(或1)以啟用該屬性,或是no(或0)以消除它。 width和height的文法形式如下: feature=pixels 其中pixels是任何正整數(或正整數變數),確定新視窗的大小(以像素為單位)。
close() 關閉視窗使用close()方法,它的文法形式如下: windowReference.close() 可以使用以下任何一個函數關閉當前視窗:window.close()、self.close()、close()。我們可以通過引用一個視窗的windowVar(該值是調用open()方法時產生的),來關閉一個獨立的視窗。比如:某個視窗建立時所用的命令是: WindowB=open(",","anotherwindow","windth=80,height=40); 我們可以在任何其它視窗中關閉它,使用命令: windowB.close() 關閉最頂層的視窗可以利用以下方法 top.close() 當然,如果要關閉當前視窗,我們可以使用任何自行關閉命令。