JS设计模式-状态模式


JS设计模式-状态模式

1.原代码

假设我们期望给按钮绑定事件以实现关灯->弱光->强光->关灯的效果

按照一般性思维我们得到了以下代码



  
    
    
    
    Document
  
  
    
  
  


2.原代码存在的问题

1.不符合开放封闭原则

2.胖函数

3.状态切换不明显

4.切换关系不明确

3.采用状态模式进行改进

于是我们便得到了以下代码



  
    
    
    
    Document
  
  
    
  
  


*4.采用责任链模式对原代码进行改进



  
    
    
    
    Document