2015-06-12 72 views
-2

有人可以向我解釋這段代碼嗎? 任何幫助將不勝感激!謝謝!! 這段代碼的含義是什麼? (Javascript FOR循環)

<p id="arrayString"></p> 

    <script type="text/javascript"> 
    var arrayString = ""; 
    var myArray = ["pizza", "hamburger", "chicken leg"]; 

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

      arrayString = arrayString + myArray[i] + " "; 

     } 

     document.getElementById("arrayString").innerHTML = arrayString; 
    </script> 
</body> 
+1

究竟是什麼,你不明白?你有沒有嘗試閱讀教程或參考? –

+0

@Felix由於英文不是我的主要語言,對於模糊的問題感到抱歉,在教程和參考文獻中我可能會有點困惑。 而這個問題,我的意思是上面的整個代碼。 感謝您的幫助! –

+0

所以你不知道'var arrayString'在做什麼?或者''「'是什麼意思?在這種情況下,我真的建議先閱讀教程:http://eloquentjavascript.net/,https://developer.mozilla.org/en-US/docs/Web/JavaScript/Guide。解釋「一切」過於寬泛。 –

回答

2

下面是一些註釋代碼:

<p id="arrayString"></p> 

    <script type="text/javascript"> 
    var arrayString = ""; //store an empty string in the variable (the purpose is to initialize the variable in wich after(for loop) we will store the names) 

    var myArray = ["pizza", "hamburger", "chicken leg"]; //create an array with some string elements 

     //foreach element in the array (the strings)... 
     for (var i = 0; i < myArray.length; i++){ 

      //...add the 'i-est' element of the array to the string variable 'arrayString' and insert a space after the element 
      arrayString = arrayString + myArray[i] + " "; 
     } 

     //print the string in the html element with id 'arrayString' 
     document.getElementById("arrayString").innerHTML = arrayString; 
    </script> 
</body> 

for語句遍歷數組的元素,並在每次迭代你訪問一個元素:myArray[i]

檢查here以查看for循環如何工作

+0

感謝您回答我的問題,但爲什麼我們需要用空字符串聲明一個變量?什麼「i-est」元素意味着什麼? –

+0

@Kevin:刪除它,看看會發生什麼。 –

+0

查看我的編輯 – Moppo

1

我假設您的意思是for循環,而不是其他的東西。

for循環基本上除了更有組織。 for(var i = 0;正在決定何時結束for循環的變量。

i < myArray.length;基本上while(i < myArray.length)又名而imyArray長度會做裏面有什麼。

最後,i++;告訴了循環怎樣做才能i在聲明的最後,最終使其>=myArray.length

+0

查看http://stackoverflow.com/editing-help以瞭解如何格式化文本。 –

0

只要i小於myArray的長度,for循環創建變量i並執行循環內的代碼。每次執行循環中的時間代碼,i增加1

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

    arrayString = arrayString + myArray[i] + " "; 

} 

是說用於可變i,如果i < myArray.length,執行這增加的myArray第i個元素到arrayString代碼arrayString = arrayString + myArray[i] + " ";。例如,當循環開始時,i=0。因此,如果i < myArray.length,那麼myArray的第0個或第一個元素被添加到arrayString(由於數組索引從0開始:0是第一個元素,1是第二個元素,2是第三個元素,依此類推。 ,一旦完成,控制流程跳回到for循環中的條件並執行i++或「將i加1」。整個過程一直持續到i < myArray.length爲假(意思是i >= myArray.length,在這種情況下代碼在for循環中將嘗試添加不存在的數組的元素,如「添加一個5項長列表的第6個元素」)

最後一行, document.getElementById(「arrayString」) .innerHTML = arrayString;

獲取ID爲「arrayString」的文檔中的元素,並在該元素中顯示arrayString中包含的文本(這是在段落標記頂部定義的文本)。

0

它將數組轉換爲字符串。但您可以使用這個:

document.getElementById("arrayString").innerHTML = myArray.join(' ');