- 门面模式(facade)一般有两个作用:
1、简化类的接口
2、消除类与使用它的客户代码之间的耦合。
- 门面模式常常是开发人员最亲密的朋友。它几乎是所有javascript库的核心原则。
- 门面模式的目的是为了让开发人员用更简单的方法调用一些相对复杂或组合的方法,主要就是简化开发的复杂性,提供一个相对容易的API去调用内部的方法供外界去使用,这样程序员开发会变得轻松些,编写一次组合代码后可以反复的去使用它,有助于节省时间和精力。
- 当然也不要滥用门面模式,所以使用你心仪的门面之前一定要三思而定,搞不好你就会小题大做。
//门面模式的概念:简化API接口 最经典的是事件
window.onload = function(){
//给多个元素设置同样的样式
setStyle(['div1','div2','div3'],'color','#ff6699');
// 给多个元素设置多种样式
setCss(['div1','div2','div3'],{
background : '#666666',
fontSize : '20px',
color : '#ffffff'
});
}
//简单的门面模式,其实就是所谓的方法封装
function setStyle(elementId,prop,val){
for(var i=0; i<elementId.length; i++){
document.getElementById(elementId[i]).style[prop] = val;
}
}
//门面模式的Css方法
function setCss(elementId,options){
for(var prop in options){
if(!options.hasOwnProperty(prop)) continus;
setStyle(elementId,prop,options[prop]);
}
}