DIV CSS 佈局教程網

 DIV+CSS佈局教程網 >> 網頁腳本 >> JavaScript入門知識 >> 關於JavaScript >> JavaScript學習筆記之JS對象
JavaScript學習筆記之JS對象
編輯:關於JavaScript     

默認對象

  日期對象Date,

  格式:日期對象名稱=new Date([日期參數])

  日期參數:

  1.省略(最常用);

  2.英文-數值格式:月 日,公元年 [時:分:秒]

  如:today=new Date("October 1,2008 12:00:00")

  3.數值格式:公元年,月,日,[時,分,秒]

  如:today=new Date(2008,10,1)

  日期對象的方法:

  格式:日期對象名稱.方法([參數])

  使用例子:

代碼如下:
<body>
    <script type="text/javascript">
       var date = new Date();//JS中默認提供的對象
    document.writeln("現在時刻: " + ( date.getYear() + 1900 ) + "年"
                + (date.getMonth() + 1) + "月" + date.getDate()
                + "日" + ", 星期" + date.getDay() + ", 時間: "//星期天會是0,需要進一步處理,這裡先不處理
                + date.getHours() + ":" + date.getMinutes() + ":" + date.getSeconds());
    </script>
</body>

  輸出:

現在時刻: 2014年4月21日, 星期1, 時間: 14:7:53
 
數組對象
  數組對象的作用是:使用單獨的變量名來存儲一系列的值。

  JavaScript的數組有兩點特殊性:

  1.數組長度不定,可以自動擴容;

  2.數組中存放的數據類型可以不統一,即可以混存不同的數據類型。

  建立數組對象的多種格式:

  new Array();

  返回的數組為空,length 字段為 0。

  new Array(size);

  參數 size 是期望的數組元素個數。返回的數組,length 字段將被設為 size 的值。該構造函數將返回具有指定個數、元素為 undefined 的數組。

  new Array(element0, element1, ..., elementn);

  該構造函數將用參數指定的值初始化數組,數組的 length 字段會被設置為參數的個數。

  數組對象名稱=[元素1[,元素2,...]]

  (注意這裡使用的是方括號)。

  當把構造函數作為函數調用,不使用 new 運算符時,它的行為與使用 new 運算符調用它時的行為完全一樣。

  還可以創建二維數組。

  Array對象的方法可以參見:http://www.w3school.com.cn/jsref/jsref_obj_array.asp

  數組對象使用實例:

代碼如下:
<!DOCTYPE html>
<html>
  <head>
    <title>arrayTest.html</title>
    <meta http-equiv="keywords" content="keyword1,keyword2,keyword3">
    <meta http-equiv="description" content="this is my page">
    <meta http-equiv="content-type" content="text/html; charset=UTF-8">
    <!--<link rel="stylesheet" type="text/css" href="./styles.css">-->
  </head>
  <body>
    <script type="text/javascript">
    //var fruits = new Array("Apple", "Banana", "Pear");
    var fruits = ["蘋果","香蕉","梨"];//推薦使用
    //可以動態添加元素
    fruits.push("西瓜");
    fruits.push("橙子");
    for(var i = 0; i < fruits.length; ++i)
    {
        document.writeln("fruit[" + i + "] = " + fruits[i] + "<br/>");
    }
    //數組的一些方法測試
    with(document)
    {
        write("<ul>");
        write("<li>" + fruits.join()+ "</li>");//默認使用逗號來分隔
        write("<li>" + fruits.join(";")+ "</li>");
        write("<li>" + fruits.toString()+ "</li>");
        write("<li>" + fruits.reverse().join()+ "</li>");
        write("<li>" + fruits.valueOf()+ "</li>");
        //說明上面的reverse實際上是改變了數組本身
        write("</ul>");
    }
    //二維數組
    var people = new Array(3);
    people[0] = new Array(1, "zhangsan", "lisi");
    people[1] = new Array(2, "Jack", "Lucy");
    people[2] = new Array(3, "Xiaoming", "Xiaohong");
    //注意數據類型可以混合使用
    //遍歷二維數組
    for(var i = 0 ; i < people.length ; ++i)
    {
        for(var j= 0 ; j < people[i].length ; ++j)
        {
            document.write("people["+ i +"]["+ j +"] = " + people[i][j] + "<br/>");
        }
        document.write("<br/>");
    }
    </script>
  </body>
</html>

字符串對象
  建立字符串對象:

  格式:字符串對象名稱=new String(字符串常量)

  格式:字符串變量名稱="字符串常量"

  一個驗證Email的例子:

代碼如下:
<!DOCTYPE html>
<html>
  <head>
    <title>emailConfirm.html</title>
    <meta http-equiv="keywords" content="keyword1,keyword2,keyword3">
    <meta http-equiv="description" content="this is my page">
    <meta http-equiv="content-type" content="text/html; charset=UTF-8">
    <!--<link rel="stylesheet" type="text/css" href="./styles.css">-->
    <script type="text/javascript">
        function isEmail()
        {
            var emailValue = document.getElementsByName("email")[0].value;
            if(-1 == emailValue.indexOf("@"))
            {
                alert("請填寫正確的Email地址");
            }
            else
            {
                alert("Ok");
            }
        }
    </script>
  </head>
  <body>
      <form>
        email: <input type="text" name="email"><br/>
        <input type="button" value="check" onclick="isEmail()">
    </form>
  </body>
</html>

自定義對象
  前面講函數的時候講過一個例子,現在這裡再講一下這個例子:

代碼如下:
<!DOCTYPE html>
<html>
  <head>
    <title>objectTest.html</title>
    <meta http-equiv="keywords" content="keyword1,keyword2,keyword3">
    <meta http-equiv="description" content="this is my page">
    <meta http-equiv="content-type" content="text/html; charset=UTF-8">
    <!--<link rel="stylesheet" type="text/css" href="./styles.css">-->
  </head>
  <body>
    <script type="text/javascript">
    //定義對象的一種方式:通過構造函數
        function member(name, gender)
        {
            //屬性
            this.name = name;
            this.gender = gender;
            //方法
            this.display = display;//指定member對象的display方法
        }
        function display()
        {
            var str = this.name + " : " + this.gender;
            //這個display方法被誰使用了,此處的this就指向那個對象
            document.writeln(str + "<br/>");
        }
        //生成對象
        var m1 = new member("zhangsan", "male");
        var m2 = new member("lisi", "male");
        var m3 = new member("wangwu", "male");
        var m4 = new member("wangfang", "female");
        with(document)
        {
            write("輸出屬性","<br/>");
            write(m1.name + ":" + m1.gender + "<br/>");
            write(m2.name + ":" + m2.gender + "<br/>");
            write(m3.name + ":" + m3.gender + "<br/>");
            write(m4.name + ":" + m4.gender + "<br/>");
        }
        document.write("調用方法","<br/>");
        m1.display();
        m2.display();
        m3.display();
        m4.display();
    </script>
  </body>
</html>

小伙伴們是否對javascript中對象的概念和用法有了新的認識了呢,希望大家能夠喜歡本文及本系列文章。

XML學習教程| jQuery入門知識| AJAX入門| Dreamweaver教程| Fireworks入門知識| SEO技巧| SEO優化集錦|
Copyright © DIV+CSS佈局教程網 All Rights Reserved