if else 优化之策略模式

if else 太多,嵌套太深,已然成为我们搬砖路上经常遇到的问题。最近在项目上使用策略模式,有助于优化嵌套的代码,使结构更加清晰。
摘要由CSDN通过智能技术生成

if else 优化之策略模式

if else 太多,嵌套太深,已然成为我们搬砖路上经常遇到的问题。最近在项目上使用策略模式,有助于优化嵌套的代码,使结构更加清晰。

策略模型

什么是策略模式?

定义:通过定义了一系列的算法,并将每一个算法封装起来,使每个算法可以相互替代,使算法本身和使用算法的客户端分割开来,相互独立。

什么意思,实际上就是把 if 分支用函数封装成一个个代码块,对方法行为进行抽象,而不关注每个代码块的细节,这就可以算是一个简单的策略模式。

例子

根据请求返回码做出不同操作

//if else版
if(res){
	if(res.returnCode == '0'){
		do something 0
	}else if(res.returnCode == '001'){
		do something 001
	}else if(res.returnCode == '010'){
		do something 010
	}else if(res.returnCode == '100'){
		do something 010
	}else{
		do something else2
	}
}else{
	do something else1
}

如果分支越来越多,代码会很难看并且逻辑也不清晰

//策略模式
if(!res){
	do something else1
	return true;
}

var action = {
	'0&#
  • 0
    点赞
  • 1
    收藏
    觉得还不错? 一键收藏
  • 0
    评论
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值