`
lynnlysh
  • 浏览: 178935 次
  • 性别: Icon_minigender_2
  • 来自: 天津
社区版块
存档分类
最新评论

多重if else 判断的改进方案

阅读更多
/**多重if else的改进方案**/
//方法一:用 switch case 代替。如:
switch(true) {
    case (/userTask|multiTask/.test(cell.type)):
    //userTask的处理办法;
    break;
    case(/callActivity/.test(cell.type)):
    //调用活动的处理办法;
    break;
    case default:
    //do something
    break;
}

//方法二:用map结构。

var validateFunc = {
    "userTask":function(){
    //userTask的处理办法;
    },
    "callActivity":function(){
    //调用活动的处理办法;
    }

}
if(typeof validateFunc(cell.type) == "function") {
	validateFunc[cell.type]();
} else {
	//do something
}
/**
    条件的分支很多时,使用switch...case的效率将高于多重if_else语句.(在汇编层switch...case是查找表,if语句是跳转:);
    同样,{key:value,key2:value2}的map结构也是通过查表来执行
    两者相比,switch...case 的优势在于适合于复杂的条件判断;
    map结构表意更清晰**/
分享到:
评论

相关推荐

    TIA博途WINCC的触摸屏VB脚本入门学习(IF THEN ELSE判断语句).docx

    这篇文档主要介绍了如何通过VB脚本在TIA博途WINCC的触摸屏上实现基本的逻辑判断,特别是使用IF THEN ELSE语句。 首先,我们需要创建一个TIA博途项目,并添加一个HMI(Human Machine Interface)。在项目中,创建一...

    使用JS枚举简化if else

    在处理条件判断语句时,我们经常会遇到大量的if...else结构,这可能导致代码变得复杂且难以维护。本文将探讨如何使用枚举(Enum)来简化JavaScript中的if...else语句,从而提高代码的可读性和可维护性。 枚举是一种...

    TIA博途WINCC的触摸屏VB脚本入门(IF THEN ELSEIF 判断语句).docx

    在这个教程中,我们将深入理解如何使用VB脚本来实现基于IF THEN ELSEIF的条件判断逻辑在TIA博途WINCC触摸屏上的应用。 首先,我们需要创建一个TIA博途项目,并添加一个HMI(Human Machine Interface)。在HMI变量表...

    VS2015 if else for 代码折叠

    VS2015 if else for 代码折叠,VS2015 if else for 代码折叠,VS2015 if else for 代码折叠,VS2015 if else for 代码折叠,VS2015 if else for 代码折叠

    代码中大量的 if else如何优化.doc

    代码中大量的 if else 如何优化 在编程中,我们常常会遇到大量的 if else 语句,这些语句会使得代码变得难以维护和阅读。那么,如何优化这些 if else 语句呢?下面我们来讨论一些常见的优化方法。 首先,让我们看...

    if-elseif-else使用范例

    在编程语言中,`if-elseif-else`结构是一种用于条件判断的重要工具,它允许程序根据不同的条件执行不同的代码块。这个结构使得我们能够灵活地处理多种可能的情况,是编写逻辑控制流的基础。在这个"if-elseif-else...

    delphi if else 语句使用方法

    下面是一个具体的例子,展示了如何使用`IF...ELSE IF...ELSE`结构来判断学生的成绩等级,并输出相应的结果。 ```delphi var grade: Integer; edit2: TEdit; // 假设这是一个已经定义好的文本框控件 begin grade ...

    verilog中多个else_if级联造成的综合电路的低效率及解决办法

    ### Verilog中多个else_if级联造成的综合电路的低效率及解决办法 #### 概述 在Verilog语言中,条件语句(如if-else)是实现逻辑控制的重要手段之一。然而,在某些情况下,不当的使用这些条件语句可能会导致综合后...

    C语言中if-else语句的嵌套分析.pdf

    if-else语句是C语言中一种基本的控制结构,用于根据条件判断执行不同的语句。if语句的基本结构为: ```c if (condition) { // 语句1 } else { // 语句2 } ``` 其中,condition是条件表达式,如果条件为真,则执行...

    if else 语句 sql server

    if else 语句

    用InputBox和If then Else,if elseif,SelectCase三种方法判断分支函数的应用程序,.net源代码.

    在提供的压缩文件"VBnet090409_用InputBox和If then Else判断分支函数的应用程序"中,可以预期包含的源代码将演示如何结合使用这些技术来创建一个用户界面,该界面接收用户输入并根据输入的值执行相应的操作。...

    运用IF-else

    标题中的“运用IF-else”指的是在编程语言中使用条件语句进行逻辑判断的基本概念。在编程中,IF-else结构是控制流程的一种关键方式,它允许程序根据特定条件执行不同的代码块。当我们需要在满足某种条件时执行特定...

    策略模式消除if-else分支判断.zip

    "策略模式消除if-else分支判断"的主题旨在通过引入策略模式和工厂模式来解决这一问题,提高代码的灵活性和可复用性。 策略模式是一种行为设计模式,它使你能在运行时改变对象的行为。在策略模式中,一个类的行为或...

    Java基础if和ifelse选择结构

    4. **多重if-else语句**:多个`if`语句依次判断,直到找到符合条件的分支为止。 ```java int grade = 88; if (grade >= 90) { System.out.println("优秀"); } else if (grade >= 80) { System.out.println(...

    if-else 三地址

    在编程语言的编译原理中,`if-else`条件语句是构建程序逻辑的基础,而三地址码(Three Address Code,TAC)是一种中间表示形式,用于简化编译器的中间阶段处理。本篇文章将深入探讨如何使用递归下降法来设计一个翻译...

    VS2012 if else for 代码折叠

    VS2012 C# 将代码中的 if else for折叠插件

    asp.net if else 语句

    asp.net---- if else 语句

    if else翻译方案

    此课设是if else 条件语句的翻译程序. 功能说明如下: 1.整体词法分析; 2.if else语法分析,递归下降法. 3.三地址形式代码格式输出; 4.变量符号表的实现,即先定义变量才可以使用; 5.出错提示,具体行数出错...

    条件语句ifelse的形式if北京大学计算机科学技术研究所PPT学习教案.pptx

    掌握`if-else`语句对于编写具备逻辑判断能力的程序至关重要,它是构建复杂程序逻辑的基础,使得程序可以根据不同条件做出响应,提高了程序的灵活性和实用性。在学习过程中,除了理解语法,还要注重实践,通过编写...

    if_else翻译程序

    在编程领域,`if-else`条件语句是控制流程中的关键组成部分,它允许程序员根据特定条件执行不同的代码块。本项目"if_else翻译程序"专注于设计一个能够解析并翻译`if-else`结构的程序,采用LR方法,并通过输出四元式...

Global site tag (gtag.js) - Google Analytics