您好,登錄后才能下訂單哦!
本文實例講述了javascript設計模式之Adapter模式。分享給大家供大家參考,具體如下:
所謂Adapter模式就是適配器模式,主要是指使兩個原本沒有關聯的類結合一起使用。
JS實現Adapter模式示例如下:
<!DOCTYPE html> <html> <head> <title></title> <script type="text/javascript" src="json.js"></script> <script type="text/javascript" language="javascript"> var DataSource01={}; DataSource01.Author="Kevin"; DataSource01.GetName=function(){ return "Kevin"; }; DataSource01.GetAge=function(){ return 35; }; var DataSource02={}; DataSource02.Author="Leo"; DataSource02.MyName=function(){ return "Leo"; }; DataSource02.MyAge=function(){ return 25; }; var DataSource03={}; DataSource03.Author="zhihui"; DataSource03.Name=function(){ return "zhihui"; }; DataSource03.Age=function(){ return 25; }; //講所有的放入一個數組中 //在生成隨機數后可以以下標 var DataSources=[DataSource01,DataSource02,DataSource03]; var DataAdapter={}; DataAdapter.DataSource=false; DataAdapter.SetDataSource=function(ds){ DataAdapter.DataSource=ds; }; DataAdapter.ReturnData=function(){ var Data={}; Data.Author=false; Data.Name=false; Data.Age=false; //生成隨機數 //用來隨機模擬前臺的點擊 var rand=Math.random(); rand=Math.floor(Math.random()*3); console.log(rand); console.log(DataSources[rand]); DataAdapter.SetDataSource(DataSources[rand]); if(rand==0){ Data.Author=DataAdapter.DataSource.Author; Data.Name=DataAdapter.DataSource.GetName(); Data.Age=DataAdapter.DataSource.GetAge(); }else if(rand==1){ Data.Author=DataAdapter.DataSource.Author; Data.Name=DataAdapter.DataSource.MyName(); Data.Age=DataAdapter.DataSource.MyAge(); }else if(rand==2){ Data.Author=DataAdapter.DataSource.Author; Data.Name=DataAdapter.DataSource.Name(); Data.Age=DataAdapter.DataSource.Age(); } return Data; }; function ShowData(){ var Data= DataAdapter.ReturnData(); alert(Data.toJSONString()); } function ChooseDS01(){ DataAdapter.SetDataSource( DataSource01); } function ChooseDS02(){ DataAdapter.SetDataSource( DataSource02); } </script> </head> <body> <input type="button" value="DataSource01" onclick="ChooseDS01()"> <input type="button" value="DataSource02" onclick="ChooseDS02()"> <input type="button" value="Show Data" onclick="ShowData()"> </body> </html>
更多關于JavaScript相關內容可查看本站專題:《javascript面向對象入門教程》、《JavaScript中json操作技巧總結》、《JavaScript切換特效與技巧總結》、《JavaScript查找算法技巧總結》、《JavaScript動畫特效與技巧匯總》、《JavaScript錯誤與調試技巧總結》、《JavaScript數據結構與算法技巧總結》、《JavaScript遍歷算法與技巧總結》及《JavaScript數學運算用法總結》
希望本文所述對大家JavaScript程序設計有所幫助。
免責聲明:本站發布的內容(圖片、視頻和文字)以原創、轉載和分享為主,文章觀點不代表本網站立場,如果涉及侵權請聯系站長郵箱:is@yisu.com進行舉報,并提供相關證據,一經查實,將立刻刪除涉嫌侵權內容。