JavaScript 創(chuàng)建對(duì)象和構(gòu)造類實(shí)現(xiàn)代碼
更新時(shí)間:2009年07月30日 21:48:51 作者:
JavaScript學(xué)習(xí)筆記:創(chuàng)建對(duì)象和構(gòu)造類.
創(chuàng)建一個(gè)對(duì)象
Java代碼
<script type="text/javaScript">
var newObject=new Object();
//創(chuàng)建一個(gè)對(duì)象
newObject.firstName="frank";
//增加一個(gè)firstName屬性
newObject.sayName=function(){
alert(this.firstName);
}
//添加一個(gè)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)建對(duì)象和上面同樣的效果。
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();
還可以這樣來(lái)構(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來(lái)添加方法,這樣不管有多少個(gè)實(shí)例,在內(nèi)存中只有一個(gè)sayName方法。
Java代碼
復(fù)制代碼 代碼如下:
<script type="text/javaScript">
var newObject=new Object();
//創(chuàng)建一個(gè)對(duì)象
newObject.firstName="frank";
//增加一個(gè)firstName屬性
newObject.sayName=function(){
alert(this.firstName);
}
//添加一個(gè)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)建對(duì)象和上面同樣的效果。
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();
還可以這樣來(lái)構(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來(lái)添加方法,這樣不管有多少個(gè)實(shí)例,在內(nèi)存中只有一個(gè)sayName方法。
您可能感興趣的文章:
- JS創(chuàng)建類和對(duì)象的兩種不同方式
- 跟我學(xué)習(xí)javascript創(chuàng)建對(duì)象(類)的8種方法
- JavaScript 常見(jiàn)對(duì)象類創(chuàng)建代碼與優(yōu)缺點(diǎn)分析
- JS OOP包機(jī)制,類創(chuàng)建的方法定義
- JavaScript創(chuàng)建類/對(duì)象的幾種方式概述及實(shí)例
- 創(chuàng)建js對(duì)象和js類的方法匯總
- Javascript創(chuàng)建類和對(duì)象詳解
- JavaScript構(gòu)造函數(shù)詳解
- JS面向?qū)ο蠡A(chǔ)講解(工廠模式、構(gòu)造函數(shù)模式、原型模式、混合模式、動(dòng)態(tài)原型模式)
- JS中的構(gòu)造函數(shù)詳細(xì)解析
- 深入理解javascript構(gòu)造函數(shù)和原型對(duì)象
- JavaScript 面向?qū)ο蟪绦蛟O(shè)計(jì)詳解【類的創(chuàng)建、實(shí)例對(duì)象、構(gòu)造函數(shù)、原型等】
相關(guān)文章
JavaScript面象對(duì)象設(shè)計(jì)
學(xué)習(xí)js的高境界就是使用面向?qū)ο蟮姆椒?,?shí)現(xiàn)js的調(diào)用2008-04-04
javascript 對(duì)象入門(mén)實(shí)例教程
學(xué)習(xí)javascript 對(duì)象操作的朋友可以參考下,這個(gè)是入門(mén)級(jí)教程。2010-04-04
不錯(cuò)的JavaScript面向?qū)ο蟮暮?jiǎn)單入門(mén)介紹
JavaScript是一門(mén)OOP,而有些人說(shuō),JavaScript是基于對(duì)象的。2008-07-07
JavaScript 原型繼承,學(xué)習(xí)js面向?qū)ο蟮呐笥芽梢钥纯础?/div> 2011-12-12
最簡(jiǎn)單的javascript對(duì)象實(shí)例代碼
非常簡(jiǎn)單的js面向?qū)ο髮?shí)例代碼,主要是利用了this,對(duì)于js面向?qū)ο蟮膶W(xué)習(xí)資料,可以查看腳本之家以前的文章。2009-12-12
javascript面向?qū)ο蟮姆绞綄?shí)現(xiàn)的彈出層效果代碼
由于本人以前是.net程序員,所以即使現(xiàn)在在做前端,也習(xí)慣于用面向?qū)ο蟮姆绞骄帉?xiě)js腳本,我想如果你以前也是或者現(xiàn)在還是名第三代程序員的話,應(yīng)該對(duì)此并不陌生。2010-01-01
JavaScript面向?qū)ο笤O(shè)計(jì)二 構(gòu)造函數(shù)模式
在Javascript面向?qū)ο笤O(shè)計(jì)一——工廠模式 中介紹了使用CreateEmployee()函數(shù)創(chuàng)建員工類。ECMAScript中的構(gòu)造函數(shù)可以用來(lái)創(chuàng)建特定類型的對(duì)象,如Object和Array這樣的原生構(gòu)造函數(shù),在運(yùn)行時(shí)會(huì)自動(dòng)出現(xiàn)在執(zhí)行環(huán)境中,此外也可以創(chuàng)建自定義的構(gòu)造函數(shù),從而創(chuàng)建自定義對(duì)象類型的屬性和方法2011-12-12最新評(píng)論

