2015-12-10 18 views
1

我應該如何以更好的方式編寫下面的JavaScript函數?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:""} 
    } 
    } 
+0

的issueSummary對象將是以下類型的。 {「CRITICAL」:1,「MAJOR」:1,「MINOR」:1} – user3721335

回答

2

像這樣

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:""} 
} 
+0

你犯了一個小錯誤,返回是一個對象,你用'[]'。 – Shanoor

+0

@ShanShan謝謝指點而不降低:)。做了更改 – gurvinder372

+0

沒問題,我即將發佈相同的代碼,但你更快,所以upvote它是:) – Shanoor