JavaScript: reference to undefined property

Gast #3163605
Lesenswert?

Was bedeutet die JavaScript-Fehlermeldung:

ReferenceError: reference to undefined property?

Sie erscheint bei der folgenden Zeile:

1
 FD_Re[Bot] = FD_Re[Bot] - ReCosinus - ImSinus;

ReferenceError: reference to undefined property FD_Re[Bot]

Welche Eigenschaft ist gemeint?

Ersetzte ich die Variable Bot durch ein Literal geht es.

1
 FD_Re[1] = FD_Re[1] - ReCosinus - ImSinus;
Gast #3163648
Lesenswert?

Hier der Code:

[code]
var
  SinusT   = new Array (),
  CosinusT = new Array (),

  FD_Im    = new Array (),
  FD_Re    = new Array (),

  ED_Im    = new Array (),
  ED_Re    = new Array ();

function FFT()
{
var
  Stage,
  Group,
  G,
  Butterfly,
  B,
  Top,
  Bot,

  Sinus,
  Cosinus,

  P,

  Tp,

  ReSinus,
  ImCosinus,
  ImSinus,
  ReCosinus,

  I;

  I = 0;

  Group = Samples / 2;

  Butterfly = 1;
  for(Stage = 0; I < 6; I++)
    {
      Top = 0;
      Bot = Butterfly;
      for(G = 0; G < Group; G++)
        {
          P   = 0;
          for(B = 1; B <= Butterfly; B++)
            {
              Sinus     = SinusT[P];

              Cosinus   = CosinusT[P];

              ReSinus   = FD_Re[Bot] * Sinus;
              ImSinus   = FD_Im[Bot] * Sinus;
              ReCosinus = FD_Re[Bot] * Cosinus;
              ImCosinus = FD_Im[Bot] * Cosinus;

              ++I;

              FD_Re[Bot] = FD_Re[Top] - ReCosinus - ImSinus;
              FD_Im[Bot] = FD_Im[Top] - ImCosinus + ReSinus;

              FD_Re[Top] = FD_Re[Top] + ReCosinus + ImSinus;
              FD_Im[Top] = FD_Im[Top] + ImCosinus - ReSinus;

              ++Top;
              ++Bot;
              P += Group;
            };
          Top = Bot;
          Bot = Top + Butterfly;
        };
      Group     /= 2;
      Butterfly *= 2;
    };
}

[\code]
#3163686
Lesenswert?

Die oben beschrieben Code-Zeile existiert in deinem Listing nicht!

Welchen Inhalt hat das Array FD_RE[Bot] bei diesem Zugriff? Sieht so aus 
als würdest Du versuchen auf ein nicht vorhandenes Array Element 
zugreifen. Wo und wie wird dieses Array gefüllt?

- Was hat "Stage" in der ersten for-Schleife zu suchen?
- Die Manipulation der Variable "I" ist auch Grenzwertig!

Grüsse
Gast #3163704
Lesenswert?

Markus M. schrieb:
> Die oben beschrieben Code-Zeile existiert in deinem Listing nicht!

Zwischenzeitlich hatte ich mit den Variablen "gespielt".

> Welchen Inhalt hat das Array FD_RE[Bot] bei diesem Zugriff? Sieht so aus
> als würdest Du versuchen auf ein nicht vorhandenes Array Element
> zugreifen. Wo und wie wird dieses Array gefüllt?

Daran lag es! Danke für deinen Hinweis.

> - Was hat "Stage" in der ersten for-Schleife zu suchen?
> - Die Manipulation der Variable "I" ist auch Grenzwertig!

Warum?

Antwort schreiben

Bitte melde dich an, um einen Beitrag zu schreiben.

oder

Mit Google-Account einloggen

Die Registrierung ist kostenlos und dauert nur eine Minute.

Jetzt registrieren