2009-12-10 56 views
6

好的我最近一直在問很多JS問題,並且意識到我只需要去學習它。javascript for()循環,分割()和數組問題

繼續教程http://www.tizag.com/javascriptT非常簡單直接。

我只是想確保我正確理解這一點。我花了一段時間才能得到它:

<script type="text/javascript"> 
var myString = "zero one two three four"; 

var mySplitResult = myString.split(" "); 

for(i = 0; i < mySplitResult.length; i++){ 
    document.write("<br /> Element " + i + " = " + mySplitResult[i]); 
} 
</script> 

-

var myString = "zero one two three four"; 

顯然,這將創建一個簡單的字符串變量。

var mySplitResult = myString.split(" "); 

使用「」作爲分隔符對其進行分割,並將其分配給mySplitResult數組。正確?或者它不是一個數組?

for(i = 0; i < mySplitResult.length; i++){ 

這是說數組中的值的數量?似乎沒有可能說出字符串中字符的實際長度。

document.write("<br /> Element " + i + " = " + mySplitResult[i]); 

這只是返回mySplitResult [i]變量「我」。由於我每增加一個循環,它都會從數組中提取正確的信息。

+8

的答案是「是」。沒有什麼可說的了。 – 2009-12-10 17:14:46

+1

您可以使用在線參考(例如Mozilla's)查看詳細信息:https://developer.mozilla.org/en/Core_JavaScript_1.5_Reference或Microsoft's:http://msdn.microsoft.com/en-us/library/yek4tbz0 (VS.85)的.aspx – NickFitz 2009-12-10 17:33:12

回答

1

你的分析是正確的,但你應該通過測試來看到。使用Firefox的Firebug擴展,你可以通過你的JavaScript。

這將幫助您瞭解正在發生的事情,因爲您可以查看元素的屬性並監視實際發生的情況。

13

你的理解本質上是正確的。你應該做的一件事是聲明所有的變量:這在函數內部是非常重要的。所以,你應該聲明i作爲變量,無論是在循環之前:

var i; 
for (i = 0; i < mySplitResult.length; i++) { 

...或者在for語句中的第一個表達式:

for (var i = 0; i < mySplitResult.length; i++) {