动态原型模式将所有信息封装在了构造函数中,而通过构造函数中初始化原型(仅第一个对象实例化时初始化原型),这个可以通过判断该方法是否有效而选择是否需要初始化原型。
function
Blog(name, url) {
this
.name = name;
this
.url = url;
if
(
typeof
this
.alertInfo !=
'function'
) {
// 这段代码只执行了一次
alert(
'exe time'
);
Blog.prototype.alertInfo =
function
() {
alert(thia.name +
this
.url);
}
}
}
blog2 =
new
Blog(
'wyc'
,
'http:***.com'
);
}