MudGuard: JavaScript - Arrays

Beitrag lesen

Hi,

var a = new Array(4);
var b = new Array(4);
for (i=0; i < a.length; ++i)
  {
  a[i] = new Array(10);

a[i][0] ist jetzt zwar existent, aber ein Wert ist hierfür nicht definiert.
Gleiches gilt für a[i][1] bis a[i][9].

b[i] = i;
}
for (i=0; i < a.length; ++i)

i nimmt also Werte von 0 bis 3 an - die Länge von a wurde ja oben auf 4 festgesetzt.
Du benutzt hier die Länge des einen Arrays (a), um über die Inhalte eines anderen Arrays (a[0]) zu laufen.
Ist das wirklich das, was Du willst?

{
  a[0][i] = i;
}

Jetzt sind also a[0][0] bis a[0][3] auf definierte Werte (0 bis 3) gesetzt.
a[0][4] bis a[0][9] sind aber immer noch undefiniert.

alert(a[0][b[1]]);           //ist a[0][1]

sollte also 1 ausgeben.
Für a[0][b[4]] bzw. a[0][4] sollte aber undefined rauskommen.

cu,
Andreas

--
Warum nennt sich Andreas hier MudGuard?
Fachfragen per E-Mail halte ich für unverschämt und werde entsprechende E-Mails nicht beantworten. Für Fachfragen ist das Forum da.