簡體   English   中英

如何使用 DRY 概念更有效地編寫此代碼?

[英]How can I write this code more efficiently with DRY concept?

這是一段用於 HTML 表單的 JavaScript 代碼。 我想提高效率,不要多次寫同一行; 這在下面的代碼中可能嗎?

function resetOptions(location)
{   
    if (location=='country') 
    {   
        removeOptions(selected_address_zone)
        removeOptions(selected_address_region)
        removeOptions(selected_address_city)
        removeOptions(selected_address_area)
    }
    else if (location=='zone')
    {
        removeOptions(selected_address_region)
        removeOptions(selected_address_city)
        removeOptions(selected_address_area)
    }
    else if (location=='region')
    {
        removeOptions(selected_address_city)
        removeOptions(selected_address_area)
    }
    else
    {
        removeOptions(selected_address_area)
    }
    
}

你可以用 switch 語句重寫而不中斷。 通過這樣做,例如,如果位置是一個國家/地區,它將執行它下面的案例,直到找到中斷為止。

  switch(location): {
    case: 'country': 
        removeOptions(selected_address_zone);
    case 'zone': 
        removeOptions(selected_address_region);
    case 'region':
        removeOptions(selected_address_city);
    default:
          removeOptions(selected_address_area);

  }

您可以為函數頂部的 removeOptions() 函數中傳遞的參數設置變量。

然后您可以根據您的函數參數調整參數。

查看 removeOptions() 函數及其參數會有所幫助。

暫無
暫無

聲明:本站的技術帖子網頁,遵循CC BY-SA 4.0協議,如果您需要轉載,請注明本站網址或者原文地址。任何問題請咨詢:yoyou2525@163.com.

 
粵ICP備18138465號  © 2020-2024 STACKOOM.COM