您的位置:首页 > Web前端 > JavaScript

js封装对象——prototype的使用

2016-02-28 21:50 591 查看
最近要做一js的控件,因为同一页面会加载好多个这种控件,并分别对不同的内容进行控制,为了不全篇复制粘贴,我想要将这个控件做成一个js的对象形式,因为从来没写过,所以就网络一下,总算整理出来了。

这里不说我那个控件,用一个别的例子。

最一开始,我写的是这样的:

var tool=function(){};
tool.prototype={
initialize:function(div){this._div=div;
}
}


我以为在调用new的时候是可以初始化的,即调用initialize函数:

var temp=new tool('testDiv')


结果不是,折腾了好久,才发现initialize函数根本就不会在new的时候执行,坑爹啊!!

正确的写法应该是这样:在声明tool时的函数就是构造函数——原谅我这么称呼吧,我不知道该怎

么称呼它——这里面负责初始化一些变量,然后prototype里才是公有的函数:

var tool=function(div){this._div=div;
};
tool.prototype={
doSth:function(){
alert(this._div);
}
}


这样就可以正常调用了:

var temp=new tool('aaa');
temp.doSth()
内容来自用户分享和网络整理,不保证内容的准确性,如有侵权内容,可联系管理员处理 点击这里给我发消息
标签: