如下代码,不在原型中扩展,而是把html、on 直接定义在Elem函数中,功能也能实现。这样对比在原型中扩展有何缺陷?或者不足?
function Elem(id) {
this.elem = document.getElementById(id);
this.html = function (val) {
var elem = this.elem;
if (val) {
elem.innerHTML = val;
return this; //用于链式操作,让程序更健壮
} else {
return elem.innerHTML;
}
}
this.on = function (type, fn) {
var elem = this.elem;
elem.addEventListener(type, fn);
return this; //用于链式操作
}
}