工場モデルはjsにおける応用


1.ajax技術で非同期要求を行うのは、現在ウェブ開発においてよく見られる課題の一つです.簡単な工場はこのような場合に適しています.ブラウザの能力によって一つを生成します.
 
xmlHttpRequest  ActionXObject


var simpleHandler=function(){};

simpleHandle.prototype={

       request:function(model,url,callback,postValue){

         //             xhr

          var xhr=this.createXhrObject();

          xhr.onreadystatechange=function(){

              if(xhr.readyState!=4)return;

              (xhr.status==200)?callback.success():callback.failure();

          }

           xhr.open(method,url,true);

},

createXhrObject:function(){
//            
   var methods=[

          function(){return new XMLHttpRequest();},

          function(){return new ActiveObject('Msxml2.XMLHTTP');},

          function(){ return new ActiveObject('Micosoft.XMLHTTP')}

   ];
//                  

 for(var i=0,len=methods.length;i<len;i++){

        try{

                  methods[i]();
    
                }catch(e){

                     continue;       

 }
//           createXhrObject                
this.createXhrObject=methods[i];

return methods[i];

}

}


}