views:

50

answers:

3

how could I declare several js array dynamically? For example, here is what tried but failed:

 <script type="text/javascript">
 for (i=0;i<10;i++)
 {
   var "arr_"+i = new Array();
 }

Thanks!

+2  A: 

make it an array of arrays:

var arr = [];  // creates a new array .. much preferred method too.
for (var i = 0; i < 10; i++) {
    arr[i] = [];
}
nickf
beat me to it. :)
Kon
A: 

You were pretty close depending on what you would like to do..

<script type="text/javascript">
    var w = window;
     for (i=0;i<10;i++)
     {
       w["arr_"+i] = [];
     }
</script>

Would work, what is your intention for use though?

Quintin Robinson
thanks, that's what I'm looking for
WilliamLou
globals are evil
Tim Whitlock
@Tim Whitlock Perhaps you could elaborate on your statement and completely explain scope and preferred JS programming techniques to the OP for his simple question.
Quintin Robinson
Yes, and explain how you can write any program with zero globals.
Kon
+1  A: 

You can put them all into an array, like this...

var arrContainer = [];

 for (i=0;i<10;i++)
 {
   arrContainer.push(new Array());
 }
Kon