2 回答
![?](http://img1.sycdn.imooc.com/545863cd0001b72a02200220-100-100.jpg)
TA贡献1804条经验 获得超3个赞
需要使用构造函数的时候,一般都是到了复用代码的时候。
比如你的一个页面上有两个板块用到了分页功能,不可能复制粘贴吧?
我们可以写一个构造函数来复用
function Pagination(wrapperNode) {
// 分页需要渲染的位置
this.node = wrapperNode;
}
Pagination.prototype.render = function(currentPage, allPage) {
this.currentPage = currentPage;
this.allPage = allPage;
...
// 做完一系列运算之后,开始渲染
}
Pagination.prototype.next = function() {};
Pagination.prototype.prev = function() {};
好的,写完之后你就可以在需要地方调用了
var page_1 = new Pagination(document.getElementById('my_page');
page_1.render(1, 5);
...
var page_2 = new Pagination(document.getElementById('your_page');
page_2.render(1, 12);
当你写完一个功能,发现有地方也需要类似的功能的时候,就大胆的把共用的逻辑抽出来做成类吧,不同的地方写成参数传递即可。
然后就是赶紧拥抱es6,写到飞起:
class Pagination {
// 构造函数
constructor() {
}
render() {}
next() {}
prev() {}
}
添加回答
举报