2017-10-29 94 views
1

我怎樣才能縮短這部分代碼,而不是將所有選項都添加到適用於所有可能情況的天氣圖標?如何縮短天氣api的代碼?

if (desc == "clear sky") 
{ 
    $('div.clear').removeClass('hide'); 
} else if (desc == "broken clouds") 
    { 
    $('div.cloudy').removeClass('hide'); 
    } 
else if (desc == "few clouds") 
    { 
    $('div.cloudy').removeClass('hide'); 
    } 

等等...

else { 
    $('#desc').text("now it's "); 
} 
+0

注意:我認爲這個問題會對[code review stackexchange](https://codereview.stackexchange.com/)更有意義。 – Wndrr

回答

0

您可以使用switch/case聲明,看起來像這樣

switch(desc) 
    { 
    case "clear sky": 
    $('div.clear').removeClass('hide'); 
    break; 
    case "broken clouds": 
    $('div.cloudy').removeClass('hide'); 
    break; 
    case "few clouds": 
    $('div.cloudy').removeClass('hide'); 
    break; 
    case default: 
    $('#desc').text("now it's "); 
    break; 
    } 

的另一個選項是做一本字典其中的關鍵是case,該值是一個要執行的函數。