当前位置: 首页 > news >正文

自建网站的流程/网络营销seo是什么意思

自建网站的流程,网络营销seo是什么意思,银川网站建设ctocio,谁分享一个免费网站2021JS常用的设计模式(17)—— 状态模式 状态模式主要可以用于这种场景 1 一个对象的行为取决于它的状态 2 一个操作中含有庞大的条件分支语句 回想下街头霸王的游戏。 隆有走动,攻击,防御,跌倒,跳跃等等多种状态,而这些状…
JS常用的设计模式(17)—— 状态模式

状态模式主要可以用于这种场景

1 一个对象的行为取决于它的状态

2 一个操作中含有庞大的条件分支语句

回想下街头霸王的游戏。

隆有走动,攻击,防御,跌倒,跳跃等等多种状态,而这些状态之间既有联系又互相约束。比如跳跃的时候是不能攻击和防御的。跌倒的时候既不能攻击又不能防御,而走动的时候既可以攻击也可以跳跃。

要完成这样一系列逻辑, 常理下if else是少不了的. 而且数量无法估计, 特别是增加一种新状态的时候, 可能要从代码的第10行一直改到900行.

if ( state === 'jump' ){ if ( currState === 'attack' || currState === 'defense' ){ return false; } 
}else if ( state === 'wait' ){ if ( currState === 'attack' || currState === 'defense' ){ return true; } 
} 

为了消灭这些if else, 并且方便修改和维护, 我们引入一个状态类.

var StateManager = function(){ var currState = 'wait'; var states = { jump: function( state ){ }, wait: function( state ){ }, attack: function( state ){ }, crouch: function( state ){ }, defense: function( state ){ if ( currState === 'jump'  ){ return false;  //不成功,跳跃的时候不能防御 
      } //do something;     //防御的真正逻辑代码, 为了防止状态类的代码过多, 应该把这些逻辑继续扔给真正的fight类来执行. currState = 'defense'; //  切换状态 
    } } var changeState = function( state ){ states[ state ] && states[ state ](); } return { changeState  : changeState } 
} 
var stateManager = StateManager(); 
stateManager.changeState( 'defense' ); 

通过这个状态类,可以把散落在世界各地的条件分支集中管理到一个类里,并且可以很容易的添加一种新的状态。而作为调用者,只需要通过暴露的changeState接口来切换人物的状态。

/***************************分界线1******************************************/

GOF提出的23种设计模式,至此已经写完大半。还有一些要么是js里不太适用,要么是js中已有原生自带的实现,所以就没再去深究。这2篇文章里 的大部分例子都来自或改写自工作和学习中的代码。我对设计模式的看法是不用刻意去学习设计模式,平时我们接触的很多代码里已经包含了一些设计模式的实现。 我的过程是读过prototype和jquery的源码后,回头翻设计模式的书,发现不知觉中已经接触过十之六七。

同样在实际的编码中也没有必要刻意去使用一些设计模式。就如同tokyo hot 32式一样,在一场友好的papapa过程中,没有必要去刻意使用某种姿势。一切还是看需求和感觉。

posted on 2015-02-05 09:37 玲儿灵 阅读(...) 评论(...) 编辑 收藏

转载于:https://www.cnblogs.com/jymz/p/4273974.html

http://www.jmfq.cn/news/5091139.html

相关文章:

  • 河源网站建设1993seo/google搜索app下载
  • 法院 公开网站建设情况/营销计划怎么写
  • 衢州品牌网站设计/茂名seo顾问服务
  • 柳州建设局网站/前端seo怎么优化
  • 驻马店哪里做网站/网站推广排名服务
  • 网站制作高手/seo查询官方网站
  • php 简单购物网站/河北优化seo
  • 中国城乡与建设部网站/seo具体怎么优化
  • 做网站都有那些步骤/关键词自动优化
  • 网站开发实用技术介绍/怎么优化
  • 网络科技官网/百度seo排名优
  • wordpress登录注册页面/seo建设招商
  • 推荐十个国外网站/天津抖音seo
  • 佛山正规网站建设报价/重庆森林讲了什么故事
  • web如何做网站/seo关键词优化排名外包
  • 上海羚凯网站建设/收录网站查询
  • wordpress to zblog/山西网络营销seo
  • 做2手物品通过网站去卖掉好做吗/seo优化排名百度教程
  • 从做系统网站的收藏怎么找回/茶叶网络推广方案
  • 高端网站建设公司哪家服务好/泰州网站优化公司
  • 寻找专业网站建设/口碑营销案例简短
  • 保定市做网站的电话/重庆关键词优化平台
  • 网站肯定被k/seo是什么工作
  • 美丽乡村建设规划文本网站/国际军事新闻最新消息今天
  • 天津外贸网站建设公司/网络推广收费价目表
  • 网站做一年了没做301/广东互联网网络营销推广
  • wordpress 读书模板/百度seo官网
  • 848给我做一下88网站/百度关键词自然排名优化公司
  • 北京响应式h5网站开发/windows优化大师使用方法
  • 如何创建网站目录/万江专业网站快速排名