读书人

这两种编程方式的利弊

发布时间: 2012-02-20 21:18:23 作者: rapoo

请教各位,这两种编程方式的利弊?
举个例子:用JavaScript创建了2个类,都是在页面上生成一个div,然后在程序中控制div显示或隐藏。以下是两种写法:
var s = new Object();
//方法一
s.obj1 = function(){
var body = document.createElement( "div ");
document.body.appendChild(body);
this.show = function(){
……
}
this.close = function(){
……
}


}
//写法二 请注意body.show body.close方法
s.obj2 = function(){
var body = document.createElement( "div ");
document.body.appendChild(body);
body.show = function(){
……
}
body.close = function(){
……
}

return body;

}

第一种方法,我用var obj = new s.obj1()创建对象后,得到的是一个s.obj1对象的引用;第二种方法,我用var obj = new s.obj2()创建对象后,实际上得到的是一个div的引用,第二种方法在IE中可以通过event.srcElement直接得到div对象的引用。第二种方式原则上讲不符合面向对象的思想,但又确实比第一种方式方便,所以想请教一下大家。

[解决办法]
楼主,如果你喜欢第2种方式,建议你用HTC技术 ,这样子可以随意为控件定义相关的方法,并绑定成一个实体.
[解决办法]
当然是第一种好看些,如果你要使用这个DIV,你可以再定义一个属性吧它暴露出来嘛

读书人网 >JavaScript

热点推荐