簡體   English   中英

JavaScript條件檢查數組長度

[英]Javascript condition to check array length

我有一個從服務器響應返回的數組,它有3種可能,我需要檢查UI;

  1. 如果長度是0 ..
  2. 如果長度是1 ...做點什么
  3. 長度> 1 ...做某事

在上述條件下,是否有更好的方法編寫下面的JS代碼?

if (myArray.length == 0) {

} else if (myArray.length == 1) {

} else {

}

好吧,您可以隨時使用switch

switch (myArray.length) {
  case 0:
    doSomething(); break;
  case 1:
    doSomethingElse(); break;
  default:
    doSomethingCompletelyDifferent();
}

好處是,與if-elseif-else不同,switch表達式僅計算一次。

你所擁有的一切都很好。 或者,您可以使用switch

switch (myArray.length) {
    case 0:
        // Empty
        break;
    case 1:
        // Has one entry
        break;
    default:
        // Has more than one entry
        break;
}

或者有時您會看到調度表,但是當您調用以以下內容開頭的函數時,它實際上是最相關的:

var dispatch = {
    0: handleArrayEmpty,
    1: handleArrayOneEntry,
    multi: handleArrayMultipleEntries
};

(dispatch[myArray.length] || dispatch.multi)();

當然,那有點。 :-)它利用JavaScript強大的OR運算符來處理myArray.lengthdispatch中的任何條目都不匹配的情況。

switch (myArray.length) {
                  case 0:
                   // do somthing
                  break;

                  case 1:
                   // do somthing   
                  break;

                  default:
                   // do somthing   
                  break ;
        }        

暫無
暫無

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

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