[英]Why am I getting undefined output Javascript?
在JS中輸出文本之前,我一直處於未定義狀態。 這是我的代碼。
<!DOCTYPE html>
<html>
<head>
<link rel="stylesheet" type="text/css" href="css/style.css">
<meta charset="utf-8">
<meta name="viewport" content="width=device-width, initial-scale=1">
<title>Learning javascript</title>
</head>
<body>
<p id="arrayString"></p>
<!-- Javascript -->
<script type="text/javascript" src="JS/app2.js"></script>
</body>
</html>
這是我的JS
var arrayString;
var myArray=["Ms.Vickies", "Old Dutch", "Lays"];
for (var i=0; i<myArray.length; i++) {
arrayString=arrayString+myArray[i];
}
document.getElementById("arrayString").innerHTML=arrayString;
我的輸出undefinedMs.VickiesOld DutchLays
另外為什么沒有空格? 我是JS的新手,但我正在努力。 無法解決這個問題。
這是因為在您的第一次循環迭代中, arrayString
是未定義的。 將其設置為等於空字符串。
而不是像這樣聲明arrayString
:
var arrayString;
用空字符串初始化它:
var arrayString = '';
因為您通過執行此操作來初始化null / undefined變量: var arrayString;
您可以通過執行以下操作來修復它: var arrayString = "";
更好的for
,您可以使用以下方法for
代替使用for
循環:
var myArray=["Ms.Vickies", "Old Dutch", "Lays"];
document.getElementById("arrayString").innerHTML = myArray.join(" ");
在代碼中,您剛剛聲明了但未初始化。因此,只需替換
var arrayString;
與
var arrayString = '';
希望對您有幫助...謝謝。
聲明:本站的技術帖子網頁,遵循CC BY-SA 4.0協議,如果您需要轉載,請注明本站網址或者原文地址。任何問題請咨詢:yoyou2525@163.com.