1

私のプログラムには次のものがあります。

[1, 2, 2] のような配列 currentIndex [1, [2, 0, [2, 3, -]] のような多次元配列 direction 1]

方向[1] [2] [2]にアクセスできるように最初のものをループするにはどうすればよいですか(最初の配列を2番目のインデックスに変えます)?

4

3 に答える 3

0

多次元配列をループする場合、プロセスは次のようになります。

for(var i in directions){
  for(var n in direction[i]){
    for(var q in directions[i][n]){
      var innerIncrement = q, innerValue = directions[i][n][q];
    }
  }
}

for in ループが自動的にインデックスを文字列にすることを考慮してください。以下は、他の助けを借りて、同じことを行うための失敗しない方法です。

for(var i=0,l=directions.length; i<l; i++){
  var d = directions[i];
  for(var n=0,c=d.length; n<c; n++){
    var d1 = d[n];
    for(var q=0,p=d1.length; q<p; q++){
      var innerIncrement = q, innerValue = d1[q];
    }
  }
}

上記のいずれかのようなループを実行する場合、外側のループがインクリメントを増やす前に、各内側のループが完全に一周し、その後再び完全に一周することを想像してください。これらのループを実装する目的が何であるかを本当に知る必要があります。

于 2013-10-25T00:13:20.537 に答える