面向对象的JavaScript
类:
function DelegateObject(){
var obj = new Object();
类:
function DelegateObject(){
var obj = new Object();
obj.value = "";
obj.FormatString = null;
obj.toString = function _toString(){
if(obj.FormatString != null)
return this.FormatString(this.Value);
else
return this.Value;
}
return obj;
}
var obj = new DelegateObject();
委托:
function DelegateObject(){
var obj = new Object();
obj.value = "";
obj.FormatString = null;
obj.toString = function _toString(){
if(obj.FormatString != null)
return this.FormatString(this.Value);
else
return this.Value;
}
return obj;
}
function ConvertToString(value){
return "Result:" + value;
}
var obj = new DelegateObject();
obj.Value = "Hello World!";
obj.FormatString = ConvertToString;
document.write(obj.toString());
问题点数:20、回复次数:10Top
1 楼czhenq(...... fucking life. I want to change.)回复于 2006-02-09 18:27:41 得分 0
重写:
function DelegateObject(){
var obj = new Object();
obj.toString = function _toString(){
if(obj.FormatString != null)
return this.FormatString(this.Value);
else
return this.Value;
}
return obj;
}
继承:
function DelegateObject(){
var obj = new Object();
obj.value = "";
obj.FormatString = null;
obj.toString = function _toString(){
if(obj.FormatString != null)
return this.FormatString(this.Value);
else
return this.Value;
}
return obj;
}
function Class2(){
var obj = new DelegateObject();
return obj;
}
function ConvertTOString(value){
return "Result:" + value;
}
var obj = new Class2();
obj.Value = "Hello World!";
obj.FormatString = ConvertTOString;
document.write(obj.toString());
Top
2 楼czhenq(...... fucking life. I want to change.)回复于 2006-02-09 18:27:55 得分 0
事件:
function EventHandler(){
var eventobj = new Object();
eventobj._eventHandler = null;
eventobj.Activate = function _activate(){
if(eventobj._eventHandler != null)
eventobj._eventHandler();
}
eventobj.Add = function _add(eventHandler){
eventobj._eventHandler = EventHandler;
}
eventobj.Remove = function _remove(){
eventobj._eventHandler = null;
}
return eventobj;
}
function mouseClick(){
alert("Hello World!");
}
var obj = new EventHandler();
obj.Add(mouseClick());
obj.Activate();
Top
3 楼Taciterry(面朝大海,春暖花开)回复于 2006-02-09 19:06:44 得分 3
Good job!!!Top
4 楼czhenq(...... fucking life. I want to change.)回复于 2006-02-13 19:00:49 得分 0
枚举:
function _StatusList(){
var object = new Object();
object.正常= "Normal";
object.删除= "Delete";
object.审核通过= "Auditing";
object.驳回 = "OverRule";
return object;
}
Object.prototype.StatusList = new _StatusList();
function TObject(){
var obj = new Object();
obj.Type = "YiZhu";
obj.Status = Object.StatusList.审核通过;
}
alert(obj.Status);
Top
5 楼netpotRL(←≮华丽的括号≯→)┅┅(JAVA精神BEAN) (五车,又见五车)回复于 2006-02-13 19:07:55 得分 3
这个??很不错~~~Top
6 楼liuzhanpeng(圣诞菠萝包)回复于 2006-02-13 19:12:23 得分 3
好,收藏!Top
7 楼mingxuan3000(铭轩)回复于 2006-02-13 19:18:10 得分 3
markTop
8 楼smnzg(过路人)回复于 2006-02-13 21:18:15 得分 3
markTop
9 楼ice_berg16(寻梦的稻草人)回复于 2006-02-13 22:25:21 得分 5
eventobj._eventHandler = EventHandler;
=>
eventobj._eventHandler = eventHandler;
obj.Add(mouseClick());
=>
obj.Add(mouseClick);Top
10 楼Deneral(我是中国人)回复于 2006-03-25 10:04:18 得分 0
关注中Top




