HTML, AJAX, JavaScript, Merkwürdigkeit im Script

Gast #4053252
Lesenswert?

Das Java Scipt Programm in bmp.htm holt Daten (measure.dat) von einem 
Server und trägt 5 Werte in das Array 'param' ein (p[22] bis p[26]). Die 
eingetragenen Werte werden zusammen mit vorhandenen Werten in eine 
Temperatur und einen rel. Feuchtewert umgerechnet.

Das merkwürdige in diesem Programm ist die Zeile, die mit *1 
gekennzeichnet ist.

Ist die Zeile aktiv, dann gib sie '0-number' aus. Das ist die 
Merkwürdigkeit Nummer 1, da der Wert in P[22] 144 ist. Die Zeile, die 
mit *2 markiert ist, gibt korrekt '114-number' aus. Temperatur und rel. 
Feuchte werden richtig berechnet.

Klammere ich die *1-Zeile aus, kommt es zu Merkwürdigkeit Nummer 2. Es 
wird mit falschen Werten gerechnet und das Ergebnis ist dem 
entsprechend.

Das Programm ohne *1-Zeile nimmt die Startwerte (0, 0, 0, 0, 0) für 
p[22] bis p[26] und mit *1-Zeile die Werte, die vom Server kommen.


Wo liegt das Problem? Wie kann die *1-Zeile bewirken, dass verschiedene 
Werte zur Berechnung herangezogen werden?
Angehängte Dateien:
Gast #4053270
Lesenswert?

Andi ... schrieb:
> der 23. Wert in deinem "param" array ist 0.
> Demzufolge ist param[22] ==> 0
>
> Da es sich um den Typ "Number" handelt, gibts typeof(param[22]) nunmal
> "number" zurück - also wo ist dein Problem ? ;)

Das Problem ist, dass du das Problem nicht verstanden hast. Bitte noch 
einmal durchlesen. Insbesondere die beiden Fragen.
Gast #4053347
Lesenswert?

Udo Neist schrieb:

> Arrays fangen mit [0] an und nicht mit [1]. Daher ist param[22] = 0.
> Wenn du loadmeasure() in getparam() nach param[26] = s[6] (Zeile 141)
> setzt, sollte es klappen. Ajax ist asynchron!

Das mit dem 'Ajax ist asynchron!' habe ich verstanden und es beseitigt 
auch Merkwürdigkeit 1 und 2.

Vielen Dank für deine Hilfe.

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