DIV CSS 佈局教程網

 DIV+CSS佈局教程網 >> 網頁腳本 >> JavaScript入門知識 >> JavaScript基礎知識 >> javascript 學習筆記(八)javascript對象
javascript 學習筆記(八)javascript對象
編輯:JavaScript基礎知識     
1、javascript中的內置對象
javascript中除了本身的內置對象,如以下我們所熟悉的對象:
•Array
•Date
•Math
•String
•RegExp
•……
各個對象都有自己的屬性及方法,比如我們經常使用屬性及方法
屬性:stringObject.length; arrayObject.length;……
方法:stringObject.indexOf(); stringObject.splite(); stringObject.substr(); arrayObject.concat(); arrayObject.push(); arrayObject.join();……
2、如何自定義對象,及添加屬性和方法
a. 通過關鍵字new創建
復制代碼 代碼如下:
var newObject = new Object(); //創建一個新類
newObject.name = "new object"; //添加一個name的屬性
newObject.say = function() { //添加say()方法
alert(this.name); //output new object
}

對於以上的創建方法,我們可以利用JSON(JavaScript Object Notation)的方法簡寫為如下代碼:
復制代碼 代碼如下:
var newObject = {
name: "new object";
say: function () {
alert(this.name);
}
};

我們利用JSON的數據格式創建一個更為復雜的對象
復制代碼 代碼如下:
var company = {
name: "tuanzz",
product: "groupon",
address: {province: "Hubei", city: "wuhan"},
person:[
{name: "zhangchen",age: "23"},
{name: "luomi", age: "23"},
],
readme: function() {
alert("My name is "+this.person[0].name+" and "+this.person[0].age+" years old");
}
};
company.readme(); //output My name is zhangchen and 23 years old;

我們可以看到,用JSON的數據格式創建的對象,代碼不僅看起來十分優雅。
JSON的形式就是用大括“{}”號包括起來的項目列表,每一個項目間並用逗號“,”分隔,而項目就是用冒號“:”分隔的屬性名和屬性值。這是典型的字典表示形式,也再次表明了 JavaScript裡的對象就是字典結構。不管多麼復雜的對象,都可以被一句JSON代碼來創建並賦值。
b、通過構造函數來創建對象
復制代碼 代碼如下:
function objectFun(name) {
this.name = name;
this.say = function() {
alert(this.name);
}
}
var newObject = new objectFun("zhangchen");
newObject.say(); //output zhangchen

首先新建一個objectFun()函數,其中定義了屬性和方法,這裡我們可以把objectFun看作一個類(在javascript中函數就是對象),然後通過new實例化出一個對象,newObject對象中同樣也有了父類中屬性和方法。
我們可以用以下代碼來檢測函數確實是對象:
復制代碼 代碼如下:
//普通函數
function say(s) {
alert(s);
}
say("hi");
//給函數對象賦屬性,函數就是對象
say.test = "it can work?";
alert(say.test); //output it can work?

如何理解以上創建對象的方法?我們看下面的代碼:
復制代碼 代碼如下:
function objectFun(name) {
this.name = name;
this.say = function() {
alert(this.name);
}
}
var newObject = new Object(); //創建一個空對象
objectFun.call(newObject, "zhangchen"); //將newObject作為this參數調用objectFun函數
newObject.say("zhangchen");//output zhangchen

首先創建一個newObject對象,newObject作為this參數調用objectFun函數。講了這麼多,我們完全可以把objectFun作為構造函數來使用。
-------------------------------------------------------------------------------------------------------------------------------------------------
余下內容大家可參考李戰寫的悟透JavaScript
XML學習教程| jQuery入門知識| AJAX入門| Dreamweaver教程| Fireworks入門知識| SEO技巧| SEO優化集錦|
Copyright © DIV+CSS佈局教程網 All Rights Reserved