JavaScript 創(chuàng)建對象和構(gòu)造類實現(xiàn)代碼
更新時間:2009年07月30日 21:48:51 作者:
JavaScript學(xué)習(xí)筆記:創(chuàng)建對象和構(gòu)造類.
創(chuàng)建一個對象
Java代碼
<script type="text/javaScript">
var newObject=new Object();
//創(chuàng)建一個對象
newObject.firstName="frank";
//增加一個firstName屬性
newObject.sayName=function(){
alert(this.firstName);
}
//添加一個sayName方法
//調(diào)用sayName方法
// newObject.sayName();
// newObject["sayName"]();
var FirstName=newObject["firstName"];
var whatFunction;
// if(whatVolume==1){
// whatFunction="sayName";
// }else if(whatVolume==2){
// whatFunction="sayLoudly"
// }
// newObject[whatFunction]();
function sayLoudly(){
alert(this.firstName.toUpperCase());
}
newObject.sayLoudly=sayLoudly;
//另一種方式添加方法
newObject["sayLoudly"]();
</script>
利用json(javaScript Object Notation)創(chuàng)建對象和上面同樣的效果。
Java代碼
function sayLoudly(){
alert(this.firstName.toUpperCase());
}
var newObject={
firstName:"frank",
sayName:function(){alert(this.firstName);},
sayLoudly:sayLoudly
};
//也可以這樣
var newObject={
firstName:"frank",
sayName:function(){alert(this.firstName);},
sayLoudly:sayLoudly,
lastName:{
lastName:"ziggy",
sayName:function(){alert(this.lastName);}
}
};
newObject.lastName.sayName();
這樣也ok
Java代碼
function sayLoudly(){
alert(this.name.toUpperCase());
}
function sayName(){
alert(this.name);
}
var newObject={
name:"frank",
sayName:sayName,
sayLoudly:sayLoudly,
lastName:{
name:"ziggy",
sayName:sayName
}
};
newObject.lastName.sayName();
JavaScript 中的類,還有構(gòu)造方法。。。
Java代碼
function newClass(){
alert("constructor");
this.firstName="frank";
this.sayName=function(){alert(this.firstName);}
// return this;
}
//var nc=newClass();
var nc=new newClass();
//nc.firstName="ziggy"; is ok
nc.sayName();
還可以這樣來構(gòu)造類
Java代碼
function newClass(){
this.firstName="frank";
}
newClass.prototype.sayName=function(){
alert(this.firstName);
}
var nc=new newClass();
nc.firstName="ziggy";
nc.sayName();
var nc2=new newClass();
nc2.sayName();
一般用prototypes來添加方法,這樣不管有多少個實例,在內(nèi)存中只有一個sayName方法。
Java代碼
復(fù)制代碼 代碼如下:
<script type="text/javaScript">
var newObject=new Object();
//創(chuàng)建一個對象
newObject.firstName="frank";
//增加一個firstName屬性
newObject.sayName=function(){
alert(this.firstName);
}
//添加一個sayName方法
//調(diào)用sayName方法
// newObject.sayName();
// newObject["sayName"]();
var FirstName=newObject["firstName"];
var whatFunction;
// if(whatVolume==1){
// whatFunction="sayName";
// }else if(whatVolume==2){
// whatFunction="sayLoudly"
// }
// newObject[whatFunction]();
function sayLoudly(){
alert(this.firstName.toUpperCase());
}
newObject.sayLoudly=sayLoudly;
//另一種方式添加方法
newObject["sayLoudly"]();
</script>
利用json(javaScript Object Notation)創(chuàng)建對象和上面同樣的效果。
Java代碼
復(fù)制代碼 代碼如下:
function sayLoudly(){
alert(this.firstName.toUpperCase());
}
var newObject={
firstName:"frank",
sayName:function(){alert(this.firstName);},
sayLoudly:sayLoudly
};
//也可以這樣
var newObject={
firstName:"frank",
sayName:function(){alert(this.firstName);},
sayLoudly:sayLoudly,
lastName:{
lastName:"ziggy",
sayName:function(){alert(this.lastName);}
}
};
newObject.lastName.sayName();
這樣也ok
Java代碼
復(fù)制代碼 代碼如下:
function sayLoudly(){
alert(this.name.toUpperCase());
}
function sayName(){
alert(this.name);
}
var newObject={
name:"frank",
sayName:sayName,
sayLoudly:sayLoudly,
lastName:{
name:"ziggy",
sayName:sayName
}
};
newObject.lastName.sayName();
JavaScript 中的類,還有構(gòu)造方法。。。
Java代碼
復(fù)制代碼 代碼如下:
function newClass(){
alert("constructor");
this.firstName="frank";
this.sayName=function(){alert(this.firstName);}
// return this;
}
//var nc=newClass();
var nc=new newClass();
//nc.firstName="ziggy"; is ok
nc.sayName();
還可以這樣來構(gòu)造類
Java代碼
復(fù)制代碼 代碼如下:
function newClass(){
this.firstName="frank";
}
newClass.prototype.sayName=function(){
alert(this.firstName);
}
var nc=new newClass();
nc.firstName="ziggy";
nc.sayName();
var nc2=new newClass();
nc2.sayName();
一般用prototypes來添加方法,這樣不管有多少個實例,在內(nèi)存中只有一個sayName方法。
您可能感興趣的文章:
- JS創(chuàng)建類和對象的兩種不同方式
- 跟我學(xué)習(xí)javascript創(chuàng)建對象(類)的8種方法
- JavaScript 常見對象類創(chuàng)建代碼與優(yōu)缺點分析
- JS OOP包機制,類創(chuàng)建的方法定義
- JavaScript創(chuàng)建類/對象的幾種方式概述及實例
- 創(chuàng)建js對象和js類的方法匯總
- Javascript創(chuàng)建類和對象詳解
- JavaScript構(gòu)造函數(shù)詳解
- JS面向?qū)ο蠡A(chǔ)講解(工廠模式、構(gòu)造函數(shù)模式、原型模式、混合模式、動態(tài)原型模式)
- JS中的構(gòu)造函數(shù)詳細(xì)解析
- 深入理解javascript構(gòu)造函數(shù)和原型對象
- JavaScript 面向?qū)ο蟪绦蛟O(shè)計詳解【類的創(chuàng)建、實例對象、構(gòu)造函數(shù)、原型等】

圍繞面向?qū)ο蟮膸状箨P(guān)鍵字:封裝 ,繼承 ,多態(tài) ,展開JavaScript面向?qū)ο?/div> 2009-03-03

js創(chuàng)建對象的幾種常用方式小結(jié)(推薦)
最近在看javascript高級程序設(shè)計,其中對對象的創(chuàng)建做了具體的闡述,綜合起來,總結(jié)了下(je知識庫javascript專欄由這方面的教程,有興趣的可以去知識庫看看)
2010-10-10 
討論javascript(一)工廠方式 js面象對象的定義方法
看《javascript高級程序設(shè)計》有感
2009-12-12