table

          深入研究JScript語法——常量和變量

          例子:

          前面的例子中:

          return "<font color=gray>"+hit+"</font>"


          使用了變量和常量,"<font color=gray>"和"</font>"是文本常量,hit是變量。

          加號(+)則將三者加成一個文本:"<font color=gray>100</font>",如果hit為100的話。

           

          數值常量

              這個很簡單,上過數學課的都應該知道如何表示數字,JScript中沒有任何特別。

          123
          0
          -100
          100.123
          1E3        (1000)

          都是合法的數字常量

          文本常量

              這個用的最多,因為經常要動態的生成HTML文本。常量必須用引號括起來:

          "abc"

          "123"

          "文本常量"

          都是合法的文本常量,為什么要用引號?完全沒有編程經驗的人可能會有些疑惑,其實很簡單,
          計算機需要把常量和變量區別開。

          變量賦值

              a = "abc"

          變量a的值為"abc"了。為什么比較時要用==,為了和賦值區別開呀!

              b = a + "123"

          變量b的值為"abc123"了。如果常量不加引號如何和變量區別呢?

              b = "a" + "123"

          變量b的值為"a123"

           

          那么如果文本中包含引號如何?比如如何表示:

          <input type=button value="A A">

          因為按鈕的名稱里有空格,那么必須用雙引號括起來,如何表示這個文本常量?

          JScript還可以使用單引號:

          '<input type=button value="A A">'

          在單引號中就可以直接使用雙引號了。反過來在雙引號括起來的常量里可以直接使用單引號。

          "<input type=button value='A A'>"

          那么當常量里兩個引號都有該怎么辦?這就需要使用轉義符號反斜杠\

          "abc'def\"ghi"

          在常量中可以用“\"”來表示一個雙引號。而且還有:

          \r\n        表示回車
          \\          表示一個反斜杠

           

           

          function myname(name){

              if (name=="小青"){
                 document.write("<input type=button value='隱藏小青' onclick=\"mytext.style.display='none'\">")
              }
              else
                 document.write(name)

          }

          上面的函數,當輸入name為“小青”時,輸出:

          <input type=button value='隱藏' onclick="mytext.style.display='none'">

           

          變量定義

              JScript中可以不預先定義變量就直接使用,但是這樣往往會帶來潛在問題,
          所以建議大家使用變量前都先定義好。

              變量有兩種類型,定義在函數內部的為局部變量。

          <script>
          function myfunc(){

          //變量定義使用var,下面定義了變量a
          var a

          //可以一次定義多個變量,用逗號分開
          var i,j,k

          //定義的時候還可以給變量賦初值
          var a="acb"

          var a=123,b="ddd"

          }
          </script>

          局部變量只在函數內有效,離開函數該變量就不存在了。

          如果定義在函數外則為全局變量:

          <script>
          //定義一個全局變量a
          var a
          </script>

          該變量在所有函數內外都將有效,除非函數內定義了一個相同名稱的變量

          <script>
          //定義全局變量a
          var a=100

          function myfunc(){

          var a="abc"

          //函數輸出的是abc,函數內的變量屏蔽了同名全局變量
          document.write(a)

          }
          </script>

          如果不使用var來定義,那么變量是全局變量。因此如果你不明確定義變量在使用,
          就可能誤用了全局變量,比如:

          <script>
          //定義全局變量a
          var a="dddd"

          ...

          function myfunc(){
              //函數內只想使用一個臨時的變量保存返回結果
              a=b+...

              ...

              return a

          }
          </script>

          那么一旦執行過myfunc,則原先的全局變量的值就被破壞了,這就可能引起其實使用
          該全局變量的程序出錯!因此強烈建議大家都明確定義變量,而且盡量少使用全局變量

          posted on 2008-10-14 09:48 小卓 閱讀(188) 評論(0)  編輯  收藏 所屬分類: html and js

          My Links

          Blog Stats

          常用鏈接

          留言簿(2)

          我參與的團隊

          隨筆檔案

          文章分類

          文章檔案

          搜索

          最新評論

          主站蜘蛛池模板: 台东市| 阳西县| 阜新| 灵宝市| 民丰县| 民权县| 万盛区| 永胜县| 恭城| 瑞安市| 南召县| 贺州市| 陇川县| 宁南县| 合阳县| 岗巴县| 长宁县| 道孚县| 胶州市| 嫩江县| 叶城县| 屏边| 周至县| 宜春市| 梅河口市| 丹东市| 古浪县| 治县。| 阿瓦提县| 河源市| 冀州市| 崇仁县| 紫阳县| 阜新市| 恩施市| 冷水江市| 福贡县| 芒康县| 普定县| 通道| 壶关县|