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

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

為什么輸出不了結果?

<!DOCTYPE HTML>

<html>

<head>

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

<title>二維數組</title>

<script type="text/javascript">

var myarr=new Array();

? ?for(var i=0;i<3;i++)

? ? {myarr[i]=new Array()

? ? ?for(var j=0;j<6;j++)

? ? ?{

? ? ? ?myarr[i][j]=i*j;

? ? ?}

? ? ?document.write(myarr[i][j])

? ? }?

</script>

</head>


<body>

</body>

</html>


正在回答

5 回答

循環部分有問題,document.write(myarr[i][j])應該放到第二個for循環內部,否則下標j沒有定義,具體如下:

??for(var i=0;i<3;i++)

? ? {myarr[i]=new Array()

? ? ?for(var j=0;j<6;j++)

? ? ?{

? ? ? ?myarr[i][j]=i*j;

document.write(myarr[i][j])//應該在這里

? ? ?}

? ? // document.write(myarr[i][j])

? ? }?


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

慕粉1469604703 提問者

非常感謝!沒有注意到變量的問題,學到了
2016-08-30 回復 有任何疑惑可以回復我~

在你的循環體內,你循環的時候,第一項、第二項的沒有初始值即undefined,所以每次拼接字符串的時候前面都有undefined。不知道說的清楚嗎,希望能幫到你

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

? for(var i=0;i<3;i++)

? ? {myarr[i]=new Array()

? ? ?for(var j=0;j<6;j++)

? ? ?{

? ? ? ?myarr[i][j]=i*j;

? document.write(myarr[i][j])

? ? ?}

? ? }


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

??document.write(myarr[i][j]),應該寫在第二個循環里面即j循環里面

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

因為你把輸出放進了第一個循環體里,每次輸出的是myarr[0][6],myarr[1][6],這當然沒有值了

你把輸出放進第二個循環體里再看看

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

慕碼人8968564

輸出的是myarr[0][j] myarr[1][j] myarr[2][j],j是局部變量,在j循環外面j是無效的變量
2016-08-30 回復 有任何疑惑可以回復我~
#2

慕粉123456099

好的,學到了,謝謝啊
2016-08-30 回復 有任何疑惑可以回復我~

舉報

0/150
提交
取消
JavaScript進階篇
  • 參與學習       468967    人
  • 解答問題       22582    個

本課程從如何插入JS代碼開始,帶您進入網頁動態交互世界

進入課程

為什么輸出不了結果?

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

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

幫助反饋 APP下載

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

公眾號

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