?? javascr5.html
字號:
<html>
<head>
<meta http-equiv="Content-Type"
content="text/html; charset=gb_2312-80">
<title>網頁教學網->>免費教程</title>
<link rel="stylesheet" type="text/css" href="samp.css">
<script language="JavaScript">
<!-- Hide
function initArray() {
this.length = initArray.arguments.length
for (var i = 0; i < this.length; i++)
this[i+1] = initArray.arguments[i]
}
function stat(txt) {
window.status = txt;
setTimeout("erase()",1500);
}
function erase() {
window.status="";
}
// -->
</script>
</head>
<body background="backgr.gif">
<table border="0" WIDTH="750" valign=top>
<tr>
<td width="150" valign=top><br><br><br>
</td><td width="150">
</td><td width="450">
<br>
<h1 align="center" size="6">第 5 集</h1>
<HR WIDTH="100%" ALIGN="center" >
<p>
<br>
<br>
<p>
陣列(arrays)的運用是程式設計中一項種要的技術。每一種程式語言均以某種特定方式來表示陣
列?;蛟S您已了解陣列在程式設計中的好處,但翻遍Netscape所提供的文件,并沒有提及如何使
用陣列。這是因為JavaScript并不支援陣列。但是現在我將教您如何在JavaScript中使用陣列。<br><br>
首先,陣列是干啥用的?您可以把它看成一長串的變數(variables)。假設您現在需要宣告10個變數
,您可以一個個將10個變數宣告為 a, b, c ...,但當您需要100個或更多的變數時,這種方法將會
變得很麻煩。若您使用一個擁有10個元素(elements)的陣列(暫且命名為 'MyArray')來表示這10個
變數,則可以用 MyArray[1], MyArray[2], MyArray[3]...分別代表第一,二,三....個變數(很多程
式語言是從0開始當作第一個元素,但在JavaScript語法中是從1開始)。因此若您想將第一個元素
(或稱變數)的值指定為17,您只要寫成 <i>MyArray[1]=17</i>即可。由此可看出陣列的功用和一般變
數是相同的。不光如此,若您想將所有元素的值均指定為17,您只要寫一個簡單的回圈(loop)即
可:<br>
<i>for (var i=1;i<11;i++) MyArray[i]=17</i><br>
for- 這個指令是告訴電腦其後的指令總共要執行幾次。for- 回圈是從1開使,也就是電腦會先執
行MyArray[1]=17。然後 i 會增加1并接著執行MyArray[2]=17。 i 每次遞增1直到 i=10為止。<br><br>
接下來教您如何做陣列的初始化(initialization)。這個問題曾在 JavaScript Mailing list中討論過。
(如果您想訂閱 mailing list, 您只要在e-mail中填入 <i>subscribe javascript-digest</i> 并寄到 <i>majordomo
@obscure.org</i> 即可。接著您每天就會收到一到二個約20-30kB的大檔案,這些檔案包括所有來自
JavaScript- list的信件)。
<p>
<pre>
function initArray() {
this.length = initArray.arguments.length
for (var i = 0; i < this.length; i++)
this[i+1] = initArray.arguments[i]
}
<p>
</pre>
您不需要了解這個函式(function)的意義,您只要知道怎麼用就好。如果您要宣告一個擁有三個元
素的陣列,且其值分別指定為 17,18,19,您只要寫成 : <i>var MyArray= new initArray(17,18,19)</i>。您
也可以用字串(strings)當作元素的值 : <i>var heyho= new initArray("This","is","酷")</i>。因此您不必管元
素值的型式(type),即使混著用也行 : <i>var Mixedup= new initArray(17,"yo",103)</i>。
<p>
下面我將對一個陣列 'Mixedup' 作初始化,并顯示陣列的內容 :
<p>
Element No. 1: 17<BR>Element No. 2: yo<BR>Element No. 3: 103<BR>
<P>
其原始碼如下:
<P>
<PRE>
<script language="JavaScript">
<!-- Hide
var Mixedup= new initArray(17,"yo",103);
document.write("Element No. 1: "+Mixedup[1]+"<br>");
document.write("Element No. 2: "+Mixedup[2]+"<br>");
document.write("Element No. 3: "+Mixedup[3]+"<br>");
// -->
</script>
</PRE>
<P>
<HR WIDTH="80%" ALIGN="center" SIZE="2">
<P>
<A name="clear"></A>
當我昨天寫一個小游戲時,我遇到一個您也可能會碰到的問題。當您想清除視窗或frame中的內
容時,Netscape文件中提到了一個函式可用-- 'document.clear()'。但當您將此函式寫入網頁中,
它并不會如預期的清除視窗或frame中的內容。而且 document.clear()在各種平臺(platform)上似乎
都無效。Gordon McComb告訴我一個清除視窗或frame中內容的好方法,您可以試試 :
<P>
<PRE>
document.close();
document.open();
document.write("<P>");
</PRE>
<P>
您不一定要寫最後一行 <I>document.write("<P>");</I>,只有當您想在視窗中寫入某些東西時才需要加
入此行。上述方法對frame亦有效。
<P>
<HR WIDTH="80%" ALIGN="center" SIZE="2">
<P>
<A name="back"></A>
接下來我們談一個可以讓您在不同文件之間穿梭的語法-- back() 和 forward() 兩個函式。通常
我們在網頁中加的 back- link和 Netscape- Navigator中的 "Back鍵" 功能上并不相同。Netscape-
Navigator中的 "Back鍵" 是回到您history list中的上一頁。您現在也可利用JavaScript做到相同的
功能。只要<font color=blue>按下此 link </font>,您可以再度回到此頁。JavaScript語法的原始碼
如下 :
<P>
<PRE>
<html>
<body>
<FORM NAME="buttonbar">
<INPUT TYPE="button" VALUE="Back" onClick="history.back()">
<INPUT TYPE="button" VALUE="網頁教學網" onClick="location='http://www.webjx.com'">
<INPUT TYPE="button" VALUE="Next" onCLick="history.forward()">
</FORM>
</body>
</html>
</PRE>
您也可以用 <I>history.go(-1)</I> 和 <I>history.go(1)</I> 代替.
<P>
<HR WIDTH="80%" ALIGN="center" SIZE="2">
<p align=center><a href=./index.htm>[返回]</a></p>
<P></td></tr></table>
</BODY>
</HTML>
?? 快捷鍵說明
復制代碼
Ctrl + C
搜索代碼
Ctrl + F
全屏模式
F11
切換主題
Ctrl + Shift + D
顯示快捷鍵
?
增大字號
Ctrl + =
減小字號
Ctrl + -