【问题标题】:javascript if statement optimization on array-length flagjavascript if语句优化数组长度标志
【发布时间】:2015-12-10 16:51:06
【问题描述】:

我应该如何以更好的方式编写以下javascript函数?

  function showIssueCount(issueSummary){
    if(issueSummary["CRITICAL"] >= 1){
      return {value:issueSummary["CRITICAL"], class:"CRITICAL" };
    }else if(issueSummary["MAJOR"] >= 1 ){
      return {value:issueSummary["MAJOR"], class:"MAJOR" };
    }else if (issueSummary["MINOR"] >= 1){
      return {value:issueSummary["MINOR"], class:"MINOR" };
    }else{
      return {vaue:0, class:""}
    }
  }

【问题讨论】:

  • issueSummary 对象将属于以下类型。 {“关键”:1,“主要”:1,“次要”:1}

标签: javascript if-statement optimization


【解决方案1】:

类似的东西

function showIssueCount( obj )
{
    var priority = [ 'CRITICAL', 'MAJOR', 'MINOR' ];
    for( var counter = 0; counter < priority.length; counter++ )
    {
        if ( obj[ priority[ counter ] ] >= 1 )
        {
            return { value : obj[ priority[ counter ] ], class: priority[ counter ] };
        }       
    }
    return {value:0, class:""}
}

【讨论】:

  • 你犯了一个小错误,返回的是一个对象,你使用了[ ]
  • @ShanShan 感谢您指出它而不投反对票:)。进行了更改
  • 没问题,我正要发布相同的代码,但你的速度更快,所以赞成:)
猜你喜欢
  • 1970-01-01
  • 1970-01-01
  • 1970-01-01
  • 2014-11-25
  • 1970-01-01
  • 1970-01-01
  • 1970-01-01
  • 2019-03-10
  • 2013-09-16
相关资源
最近更新 更多