二維數組輸出問題
var arr=[[0,1],[2,3],[4,5]]; var i=0,j=0; var row; for(;i<arr.length;i++){ row=arr[i]; ? ? ? ? ? ? ? ?console.log(row.length); for(;j<row.length;j++){ } } 為啥console.log(row.length);輸出的是2; ?按道理應該直接輸出3啊
var arr=[[0,1],[2,3],[4,5]]; var i=0,j=0; var row; for(;i<arr.length;i++){ row=arr[i]; ? ? ? ? ? ? ? ?console.log(row.length); for(;j<row.length;j++){ } } 為啥console.log(row.length);輸出的是2; ?按道理應該直接輸出3啊
2016-01-10
舉報
2016-08-18
arr.length才是數組arr的長度,row變量為arr對應【子數組】的元素,當i=0時,row=arr[0],數組arr的第一個元素賦值給row,并且row元素數組,row.length為arr第一個元素里的數組長度
2016-01-10
在@tag1 處的代碼執行時(假設 i = 0):?
...
你的第二層循環有問題,j 沒有清零, 在第二循環開始時 j 已經累加了,不是0.