亚洲在线久爱草,狠狠天天香蕉网,天天搞日日干久草,伊人亚洲日本欧美

為了賬號安全,請及時綁定郵箱和手機立即綁定

各位幫忙看下,怎么都是出現undefined?自己打了好幾遍 找不到原因

<!DOCTYPE ?HTML>

<html >

<head>

<meta http-equiv="Content-Type" content="text/html; charset=utf-8" />

<title>數組</title>

<script type="text/javascript">


?var a=['*','##','***',"&&","****","##*"];


?a[7]="**";


?alert(a.length);


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

? ? ?a[i]=new Array();


document.write(a["+i+"]+"</br>");


}


</script>

</head>

<body>

</body>

</html>


正在回答

8 回答

HTML語言,是按順序執行下來的,你在第9行定義了a數組并且給賦值了,但是在接下來你的for循環里又重新定義了a數組,沒有給賦值,輸出的結果當然是undefined.

0 回復 有任何疑惑可以回復我~

看你的問題,是要輸出數組的值吧,一個是引號的問題,一個是循環中定義的數組,看看這樣呢http://img1.sycdn.imooc.com//575fd2eb000103c705870609.jpg

0 回復 有任何疑惑可以回復我~

for(var i=0;i<arr.length;i++){
??? document.write(arr[i]+'<br>')
}

0 回復 有任何疑惑可以回復我~

一共有7個元素,而arr[7]代表arr的長度為8,中間肯定會有一個沒有聲明賦值所以就出現undefined的了

0 回復 有任何疑惑可以回復我~
for(var?i=0;i<a.length;i++){
?????a[i]=new?Array();

document.write(a["+i+"]+"</br>");

}

a[i]=new Array();//把這句放到循環前,這句的意思是定義數組,你把它放到循環里,它就循環了數次

document.write(a["+i+"]+"</br>");//改成document.write(a[i]+"</br>");

這樣就基本沒問題(a[6]還是會輸出undefined,因為它是個空值,所以輸出沒問題)

0 回復 有任何疑惑可以回復我~
#1

Chaos_祥

循環了數次,也就是定義了好幾次數組
2016-06-06 回復 有任何疑惑可以回復我~

document.write(a[i]+"<br/>"); 看下怎么用+號連接吧

0 回復 有任何疑惑可以回復我~

document.write(a[i]+"<br/>");

0 回復 有任何疑惑可以回復我~
document.write(a["+i+"]+"</br>");

數組的標簽錯了

document.write(a[i]+"</br>");


0 回復 有任何疑惑可以回復我~

舉報

0/150
提交
取消

各位幫忙看下,怎么都是出現undefined?自己打了好幾遍 找不到原因

我要回答 關注問題
微信客服

購課補貼
聯系客服咨詢優惠詳情

幫助反饋 APP下載

慕課網APP
您的移動學習伙伴

公眾號

掃描二維碼
關注慕課網微信公眾號