如題目是這樣的,實現(xiàn)一個類讓下面的代碼可以正常運行:
var me = Man({ fullname: "小李" });
var she = new Man({ fullname: "小紅" ,gender:"女"});
console.group();
console.info("我的名字是:" + me.attr("fullname") + "\n我的性別是:" + me.attr("gender"));
console.info("她的名字是:" + she.attr("fullname") + "\n她的性別是:" + she.attr("gender"));
console.groupEnd();
/*------[執(zhí)行結(jié)果]------
我的名字是:小李
我的性別是:<用戶未輸入>
她的名字是:小紅
她的性別是:女 */
我寫了下面的代碼,在new的情況下可以正常運行,但如何讓這個類也支持不用new的情況?
Man=function(obj){
for(var e in obj){
this[e]=obj[e];
}
}
Man.prototype.attr=function(attr,val){
if(val){
this[attr]=val;
}
else{
if(this[attr]){
return this[attr];
}
else{
return "<用戶未輸入>";
}
}
}
javascript中如何讓一個類既可以用new實例化,也可以不用new進(jìn)行實例化?
慕運維8079593
2018-12-07 10:14:52