2014-11-25 55 views
0

我目前正在學習中斷繼續聲明。它打印第一個數組,第二個數組像第一個數組運行警報,但第三個不運行,當我使用繼續聲明。也許我沒有做對嗎?一些新手指導會很好。Javascript - 繼續語句不起作用?

使用JSBin來運行這個。

p.s. IM從 「開頭的Javascript」 書學

感謝

var n = [233, "john", 432]; 
 
var nIndex; 
 

 
for (nIndex in n) { 
 
    if (isNaN(n[nIndex])) { 
 
     alert(n[nIndex] + " is not a number"); 
 
     continue; 
 
    } 
 
    document.write(n[nIndex] + " "); 
 
}

+2

我沒有在您的代碼中發現任何問題。它工作正常。 – 2014-11-25 03:28:52

+0

適用於我... – 2014-11-25 03:29:15

+3

僅供參考,您絕不應該用'for(x in y)'來迭代javascript數組,因爲它將遍歷數組的所有可枚舉「屬性」,而不僅僅是可能不包含數組元素屬性的數組元素。你應該使用'.forEach()'或'for(var i = 0; i jfriend00 2014-11-25 03:30:09

回答

0

這是你如何遍歷數組的元素:

var data = [233, "john", 432]; 
 

 
for (var i = 0; i < data.length; ++i) { 
 
    if (isNaN(data[i])) { 
 
     alert(data[i] + " is not a number"); 
 
     continue; 
 
    } 
 
    document.write(data[i] + " "); 
 
}

順便說一句,你可以刪除continue聲明,而是在交替的指令使用else

var data = [233, "john", 432]; 
 

 
    for (var i = 0; i < data.length; ++i) { 
 
     if (isNaN(data[i])) { 
 
      alert(data[i] + " is not a number"); 
 
     } else { 
 
      document.write(data[i] + " "); 
 
     } 
 
    }

這是邏輯上等同,你可能會發現它更容易閱讀。