javascript 寫類方式之五
更新時間:2009年07月05日 01:38:16 作者:
用 構(gòu)造函數(shù)+原型 定義一個類;同一構(gòu)造函數(shù)可以定義出多個類型
5、用 構(gòu)造函數(shù)+原型 定義一個類;同一構(gòu)造函數(shù)可以定義出多個類型
/**
* $define 寫類工具函數(shù)之二
* @param {Object} constructor
* @param {Object} prototype
*/
function $define(constructor,prototype) {
var c = constructor || function(){};
var p = prototype || {};
return function() {
for(var atr in p)
arguments.callee.prototype[atr] = p[atr];
c.apply(this,arguments);
}
}
與第四種方式類似,仍然用構(gòu)造函數(shù),原型對象,定義兩個類。
//構(gòu)造函數(shù)
function Person(name) {
this.name = name;
}
//原型對象
var proto = {
getName : function(){return this.name},
setName : function(name){this.name = name;}
}
//定義兩個類
var Man = $define(Person,proto);
var Woman = $define(Person,proto);
console.log(Man == Woman);//false,同一個構(gòu)造函數(shù)(Person)定義不同的類
復(fù)制代碼 代碼如下:
/**
* $define 寫類工具函數(shù)之二
* @param {Object} constructor
* @param {Object} prototype
*/
function $define(constructor,prototype) {
var c = constructor || function(){};
var p = prototype || {};
return function() {
for(var atr in p)
arguments.callee.prototype[atr] = p[atr];
c.apply(this,arguments);
}
}
與第四種方式類似,仍然用構(gòu)造函數(shù),原型對象,定義兩個類。
復(fù)制代碼 代碼如下:
//構(gòu)造函數(shù)
function Person(name) {
this.name = name;
}
//原型對象
var proto = {
getName : function(){return this.name},
setName : function(name){this.name = name;}
}
//定義兩個類
var Man = $define(Person,proto);
var Woman = $define(Person,proto);
console.log(Man == Woman);//false,同一個構(gòu)造函數(shù)(Person)定義不同的類
相關(guān)文章
學(xué)習(xí)面向?qū)ο笾嫦驅(qū)ο蟮男g(shù)語
學(xué)習(xí)面向?qū)ο笾嫦驅(qū)ο蟮男g(shù)語,學(xué)習(xí)面向?qū)ο笤O(shè)計的朋友可以參考下。2010-11-11javascript 面向?qū)ο?實現(xiàn)namespace,class,繼承,重載
這幾天老大天天嚷嚷要重構(gòu)我們寫的javascript,抱怨代碼太混亂,可讀性差,維護困難,要求javascript也按面對象的模型來重構(gòu)。2009-10-10JavaScript 面向?qū)ο缶幊蹋?) 基礎(chǔ)
自從有了Ajax這個概念,JavaScript作為Ajax的利器,其作用一路飆升。JavaScript最基本的使用,以及語法、瀏覽器對象等等東東在這里就不累贅了。把主要篇幅放在如何實現(xiàn)JavaScript的面向?qū)ο缶幊谭矫妗?/div> 2010-05-05DOMAssitant最新版 DOMAssistant 2.5發(fā)布
google code上的project ,值得大家學(xué)習(xí)它的類庫2007-12-12JavaScript 構(gòu)造函數(shù) 面相對象學(xué)習(xí)必備知識
關(guān)于JavaScript構(gòu)造函數(shù),如今出現(xiàn)了很多JavaScript的框架,例如jQuery、Ext等等這些,這些將JavaScript作為一種面向?qū)ο蟮恼Z言進行編程,那么JavaScript到底是怎么樣實現(xiàn)面向?qū)ο蟮囊恍┨卣鞯哪兀紫?,我們來看看JavaScript怎么樣來定義一個構(gòu)造函數(shù)。2010-06-06最新評論