欧美bbbwbbbw肥妇,免费乱码人妻系列日韩,一级黄片

javascript 學習筆記(八)javascript對象

 更新時間:2011年04月12日 00:29:23   作者:  
昨天看了些有關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創(chuàng)建
復制代碼 代碼如下:

var newObject = new Object(); //創(chuàng)建一個新類
newObject.name = "new object"; //添加一個name的屬性
newObject.say = function() { //添加say()方法
alert(this.name); //output new object
}

對于以上的創(chuàng)建方法,我們可以利用JSON(JavaScript Object Notation)的方法簡寫為如下代碼:
復制代碼 代碼如下:

var newObject = {
name: "new object";
say: function () {
alert(this.name);
}
};

我們利用JSON的數據格式創(chuàng)建一個更為復雜的對象
復制代碼 代碼如下:

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的數據格式創(chuàng)建的對象,代碼不僅看起來十分優(yōu)雅。
JSON的形式就是用大括“{}”號包括起來的項目列表,每一個項目間并用逗號“,”分隔,而項目就是用冒號“:”分隔的屬性名和屬性值。這是典型的字典表示形式,也再次表明了 JavaScript里的對象就是字典結構。不管多么復雜的對象,都可以被一句JSON代碼來創(chuàng)建并賦值。
b、通過構造函數來創(chuàng)建對象
復制代碼 代碼如下:

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?

如何理解以上創(chuàng)建對象的方法?我們看下面的代碼:
復制代碼 代碼如下:

function objectFun(name) {
this.name = name;
this.say = function() {
alert(this.name);
}
}
var newObject = new Object(); //創(chuàng)建一個空對象
objectFun.call(newObject, "zhangchen"); //將newObject作為this參數調用objectFun函數
newObject.say("zhangchen");//output zhangchen

首先創(chuàng)建一個newObject對象,newObject作為this參數調用objectFun函數。講了這么多,我們完全可以把objectFun作為構造函數來使用。
-------------------------------------------------------------------------------------------------------------------------------------------------
余下內容大家可參考李戰(zhàn)寫的悟透JavaScript

相關文章

最新評論