和風(fēng)細(xì)雨

          世上本無難事,心以為難,斯乃真難。茍不存一難之見于心,則運(yùn)用之術(shù)自出。

          JavaScript基本語法

          JavaScript的運(yùn)行環(huán)境和代碼位置

          編寫JavaScript腳本不需要任何特殊的軟件,一個(gè)文本編輯器和一個(gè)Web瀏覽器就足夠了,JavaScript代碼就是運(yùn)行在Web瀏覽器中。
          用JavaScript編寫的代碼必須嵌在一份html文檔才能得到執(zhí)行,這可以通過兩種方法得到,第一種是將JavaScript代碼直接寫在html文件中,這多用于僅適用于一個(gè)頁面的JS程序;另一種是把JavaScript代碼存入一個(gè)獨(dú)立的文件中(.js作為擴(kuò)展名),在利用<Script>標(biāo)簽的src屬性指向該文件.

          將JavaScript直接嵌入頁面文件中

          <%@ page contentType="text/html; charset=UTF-8" %>
          <!DOCTYPE HTML PUBLIC "-//W3C//DTD HTML 4.0 Transitional//EN">
          <html>
          <head>
          <title>歡迎進(jìn)入"我的事務(wù)備忘錄"</title>
          <meta http-equiv="Content-Type" content="text/html; charset=UTF-8">
          <script src="web/js/strUtil.js" type="text/javascript"></script>
          </head>

          <body>
          <div>這個(gè)頁面應(yīng)該很快消失,如果它停止說明Web容器已經(jīng)停止運(yùn)作了,或JavaScript功能未開啟
          <form method=post action="ShowPage?page=login">
          </form>
          <div>
          </body>
          </html>

          <script LANGUAGE="JavaScript">
          <!--
          document.body.onload=function(){
           document.forms[0].submit();

          //-->
          </script>


          將JavaScript存入單獨(dú)的文件中(頁面文件)

          <%@ page contentType="text/html; charset=UTF-8" %>
          <!DOCTYPE HTML PUBLIC "-//W3C//DTD HTML 4.0 Transitional//EN">
          <html>
          <head>
          <title>"我的事務(wù)備忘錄"用戶登錄頁面</title>
          <meta http-equiv="Content-Type" content="text/html; charset=UTF-8">
          <script src="web/js/ajax.js" type="text/javascript"></script>
          <link rel="stylesheet" rev="stylesheet" href="web/css/style.css"
           type="text/css" />
          </head>

          <body>
          <div id="branding">歡迎進(jìn)入"個(gè)人事務(wù)備忘錄",請(qǐng)輸入您的用戶名和密碼,再按登錄鍵登錄
          <form method=post action="ShowPage?page=loginCheck">
           <table  bgcolor="#ffffff" id="TbSort" class="Listing" width="200" align=center>
            <tbody id="loginTable">
             <tr><th align="center" colspan=3>用戶登錄.</th></tr>
             <tr>
              <td width=50>用戶名:</td>
              <td width=150><input type="text" name="userName" value=""
                style="width: 300px; height: 20px" /></td>
             </tr>
             <tr>
              <td width=50>密碼:</td>
              <td width=150><input type="text" name="userPswd" value=""
                style="width: 300px; height: 20px" /></td>
             </tr>
             <tr>
              <td width=50></td>
              <td width=150><input type="submit" value="登錄"
                style="width: 100px; height: 20px" /></td>
             </tr>
            </tbody>
           </table>
          </form>
          <div>
          </body>
          </html>

          將JavaScript存入單獨(dú)的文件中(ajax.js)

          var prjName="/MyTodoes/";
          var ajaxObj;

          function createAjaxObject(){
           try{return new ActiveXObject("Msxml2.XMLHTTP");}catch(e){};
           try{return new ActiveXObject("Microsoft.XMLHTTP");}catch(e){};
           try{return new XMLHttpRequest();}catch(e){};
           alert("XmlHttpRequest not supported!");
           return null;
          }

          function $(id){
               return document.getElementById(id);
          }

          JavaScript中的語句和注釋

          JavaScript中的語句和Java中一樣,也是一行書寫一條語句,末尾加上分號(hào)’;’,雖然js中也可以把多條語句寫在一行,但推薦不要這樣做.
          JavaScript中注釋也和Java中一樣,以// 來注釋單行,/*….*/來注釋多行,雖然HTML風(fēng)格的注釋<!-- *****  --> 在JS中也有效,但建議不要這樣做.


          JavaScript中的變量

          在js中,變量允許字母,數(shù)字,美元符號(hào)和下劃線字符.變量定義使用var關(guān)鍵字,如
          var age;
          age=23;
          var name=“andy”;
          雖然js允許程序員可以直接對(duì)變量進(jìn)行賦值而無需提前對(duì)它們做出聲明,但我們強(qiáng)烈建議不要這樣做.
          Js中變量和其它語法元素都是區(qū)分字母大小寫的,如變量age,Age,AGE沒有任何關(guān)系,它們都不是同一個(gè)變量.

          JavaScript是一種弱類型語言

          和強(qiáng)制要求程序員對(duì)數(shù)據(jù)類型做出聲明的強(qiáng)類型(Strongly typed)程序設(shè)計(jì)語言如java,C#等不一樣,js不要求程序員進(jìn)行類型說明,這就是所謂的弱類型”weakly typed”語言.這意味著程序員可以隨意改變某個(gè)變量的數(shù)據(jù)類型.
          以下寫法在Java中是絕對(duì)不允許的,但在js中完全沒有問題:
          var age=23;
          age=“Twenty three”
          Js并不關(guān)心age的值是字符串還是變量.

          JavaScript中的數(shù)據(jù)類型-字符串

          字符串必須放在單引號(hào)或雙引號(hào)中.如
          var name=“Andy”;
          var name=‘Bill’;
          一般情況下宜使用雙引號(hào),但如果字符串中有雙引號(hào)則應(yīng)該把字符串放在單引號(hào)中,反之則應(yīng)該把字符串放在雙引號(hào)中.

          JavaScript中的數(shù)據(jù)類型-數(shù)值

          Js中并沒有int,float,double,long的區(qū)別,它允許程序員使用任意位數(shù)的小數(shù)和整數(shù),實(shí)際上js中的數(shù)值應(yīng)該被稱為浮點(diǎn)數(shù).
          如:
          var salary=10000;
          var price=10.1;
          var temperature=-6;

          JavaScript中的數(shù)據(jù)類型-布爾值

          Js中的布爾值和Java中的一致,true表示真,false表示假,如:
          var isMale=true;
          var isFemale=false;

          注意布爾值true和false不要寫成了字符串”true”和’false’.

          JS中的函數(shù)

          如果需要多次使用同一組語句,可以把這些語句打包成一個(gè)函數(shù)。所謂函數(shù)就是一組允許人們?cè)诖a中隨時(shí)調(diào)用的語句。從效果上看,每個(gè)函數(shù)都相當(dāng)于一個(gè)短小的腳本。
          和Java中每個(gè)函數(shù)都在類中不一樣,JS中函數(shù)不必屬于一個(gè)類,在使用上它類似于Java中的靜態(tài)公有函數(shù),只要引入這個(gè)函數(shù)所在的文件就可以使用它。

          JS中函數(shù)的語法

          JS中,一個(gè)函數(shù)的大致語法如下:
          function fname(args){
                statements;
          }
          Function是函數(shù)的固定標(biāo)志;fname是函數(shù)名;args是函數(shù)參數(shù),它可以有很多個(gè),只要你把它們用逗號(hào)分割開來即可;statements是其中的語句,每句結(jié)尾都和java中一樣用“;”表示結(jié)束。

          在定義了這個(gè)函數(shù)的腳本(頁面)中,你可以從任意位置去調(diào)用這個(gè)函數(shù);引入這個(gè)頁面后,你還可以從其它頁面訪問它。

          一般來說,對(duì)于共通性強(qiáng),適用面廣,會(huì)在多個(gè)頁面中調(diào)用的函數(shù),我們一般把它們放在一個(gè)JS頁面中,然后由需要使用這些函數(shù)的頁面引入它們;而對(duì)于只適用于一個(gè)頁面的函數(shù),還是把它放在單個(gè)頁面中較好。

          JS函數(shù)的返回值

          在JS中,函數(shù)不僅能夠以參數(shù)的形式接受數(shù)據(jù),運(yùn)行代碼,它和其它編程語言中的函數(shù)一樣,可以返回?cái)?shù)據(jù)。
          讓JS函數(shù)返回?cái)?shù)據(jù),你不需要也不能在函數(shù)簽名上動(dòng)任何手腳,只需要用return語句返回你想返回的數(shù)字即可,舉例如下:
          function substract(op1,op2){
               return op1-op2; }
          }

          JS中變量的作用域

          在JS中,我們提倡用var來定義一個(gè)變量,凡是變量就會(huì)有作用域的問題,根據(jù)定義方式和位置的不同,它既可能是全局的,也有可能是局部的。
          用var定義在腳本文件中,不屬于任何一個(gè)函數(shù)的變量,它的作用域就是全局性的,它可以在腳本中的任何位置被引用,包括有關(guān)函數(shù)的內(nèi)部。全局變量的作用域是整個(gè)腳本。
          用var定義在函數(shù)中的變量,它的作用域就是局部性的,它的作用域僅限于這個(gè)函數(shù),在函數(shù)的外部是無法使用它的。
          不用var定義在函數(shù)中的變量,它的作用域是全局的,如果你的腳本里已經(jīng)存在一個(gè)與之同名的變量,這個(gè)函數(shù)將覆蓋那個(gè)現(xiàn)有變量的值。
          定義函數(shù)時(shí),我們必須明確的把它內(nèi)部的變量都明確的聲明為局部變量,如果從來沒有忘記在函數(shù)中使用var關(guān)鍵字,就可以避免任何形式的二義性隱患。

          JS中的數(shù)組

          在JS中,我們使用Array關(guān)鍵字聲明數(shù)組,在聲明時(shí)對(duì)數(shù)組長(zhǎng)度進(jìn)行限定,如:
          var arr=Array(3);
          有時(shí)運(yùn)行起來才知道數(shù)組長(zhǎng)度,JS中我們也可以這樣定義數(shù)組:
          var arr=Array();
          向數(shù)組中添加元素時(shí)你需要給出新元素的值,還需要在數(shù)組中為新元素制定存放位置,這個(gè)位置由下標(biāo)給出,如arr[1]=4。

          在JS中定義數(shù)組的例子

          定義方式一:
          var arr=Array(3);
          arr[0]=“劉備”; arr[1]=“關(guān)于”; arr[2]=“張飛”;
          定義方式二:
          var arr=Array();
          arr[0]=3; arr[1]=4;arr[2]=5;
          定義方式三:
          Var arr=Array(“1”,2,true);
          定義方式四:
          var arr=[“征東”,”平西”,”鎮(zhèn)南”,”掃北”];

          posted on 2008-03-14 12:49 和風(fēng)細(xì)雨 閱讀(1995) 評(píng)論(0)  編輯  收藏 所屬分類: JavaScript

          主站蜘蛛池模板: 承德县| 太原市| 项城市| 永春县| 云安县| 大邑县| 台北市| 建平县| 喜德县| 遂宁市| 双柏县| 龙川县| 马山县| 塔河县| 宁武县| 海盐县| 藁城市| 山西省| 银川市| 张北县| 邓州市| 凤山县| 宣武区| 蒙阴县| 康马县| 兴隆县| 汾阳市| 澜沧| 淮安市| 保定市| 富锦市| 高州市| 车险| 正蓝旗| 怀仁县| 会泽县| 若尔盖县| 惠州市| 宁津县| 元江| 宾川县|