我剛剛接觸Web開發的原始JavaScript方面,所以我決定學習。我知道編程的基礎知識,並且遇到了一些我似乎無法解決的問題。在JavaScript中使用數組時,我想創建一個函數來打印所有東西。所以我創建了這樣的東西。打印數組時JavaScript未定義結果
<!DOCTYPE html>
<html>
<head>
<title> Learning JavaScript </title>
<script>
var names = new Array("Connor <br />", "Shane <br />", "Ty <br />", "Brandon <br />");
function printArray(){
for(x=0; x < names.length; x++)
document.write(names[x]);
}
</script>
</head>
<body>
<script>
document.write(printArray());
</script>
</body>
</html>
它打印出名稱,但名稱後面還有另一段名爲'undefined'的文本。它看起來像這樣。
Connor
Shane
Ty
Brandon
undefined
我已經厭倦了在走動了一堆條件循環而沒有得到地方。我認爲,對於我來說,理解爲什麼'未定義'在那裏以及在實際執行項目的過程中如何避免這些情況是非常好的。任何幫助都會很棒。謝謝:)
的'undefined'位是當你調用'printArray'返回的值。用'printArray();'替換'document.write(printArray());'' – tewathia
另外,避免'document.write' – tewathia
你的代碼中有兩個'document.write',第一個(在你的函數中)執行寫操作,而另一個執行:'1:'執行'(printArray())'和'write' ....呃...未定義會導致無法寫入。 –