| |||||||
Du magst keine Werbung? Wir auch nicht!
Einfach registrieren und die Werbung ist weg. Diese Nachricht sehen nur nicht registrierte Nutzer.
![]() |
| | LinkBack | Themen-Optionen | Ansicht |
| | #1 (permalink) |
| Neuer User Registriert seit: Feb 2003
Beiträge: 26
| Allgemeingültige Funktion für das Umwandeln von beliebigen Variablen in float
Ich lese aus einem externen Programm Werte nach Flash ein. Diese Werte werden mittels JavaScript übergeben. Dadurch bekomme ich zunächst mal einen Haufen strings. Des weiteren lese ich Werte aus Eingabefeldern aus. Das ergibt ebenfalls strings. Wie muss jetzt eine Funktion aussehen, die ich an beliebiger Stelle aufrufen kann, um eine Typumwandlung nach float vorzunehmen? Mein Ansatz funktioniert leider nicht: ActionScript:
ActionScript:
Ich brauche aber eine einfache Möglichkeit Variable mit beliebigem Namen umzuwandeln. Wer hätte da eine Idee? Astrid |
| | |
| | #2 (permalink) |
| [Ernst Reiter] Registriert seit: Jul 2001 Ort: austria
Beiträge: 3.691
|
du kannst mit for in alle objekte somit auch variabeln einer ebene aufgreifen... z.b. for (var i in _root) { trace(i) // _root[i] = ..... // so könntest sie ansprechen } evtl. ist noch eine if abrage mit typeof erforderlich.. damit du keine ungewünschten objekte zurückbekommst
__________________ Das Gesetz des Lebens liegt im Notwendigen. Der Reiz des Lebens liegt im Überflüssigen m.f.g Scrawer (www.thinkspace.at) |
| | |
| | #3 (permalink) |
| Neuer User Registriert seit: Feb 2003
Beiträge: 26
| Auswahl eingrenzen
Hallo, Danke für deinen Hinweis. Allerdings habe ich eine ganze Menge Variable, die ich aber nicht alle typkonvertieren möchte. Ich denke vom Programmierstil und von der Seite der Ressourcenschonung her wäre es besser, nur die Variablen umzuwandeln, die man auch wirklich braucht. Daher auch meine Überlegung mit dem Array für die Übergabe. Was meinst du mit ActionScript:
Ist das ein Ausdruck oder ein Plathalten? Nehmen wir mal an, ich arbeite mit 30 Variablen, will aber nur 4 typkonvertieren. Also hatte ich mir gedacht, mach in ein Array, ruf meine Standardfunktion auf und fertig ist die Laube. Geht das? Astrid |
| | |
| | #4 (permalink) |
| Neuer User Registriert seit: Aug 2002 Ort: Faust-Stadt
Beiträge: 2.577
|
hi habe lange gebraucht um zu wissen was du willst ActionScript:
__________________ gruß Harry |
| | |
| | #5 (permalink) |
| Neuer User Registriert seit: Feb 2003
Beiträge: 26
| Das kann nicht funktionieren
Hallo HAY, dein Vorschlag kann nicht funktionieren. ActionScript:
ActionScript:
ActionScript:
Das Prinzip ist schon OK, aber es ist dasselbe, dass ich schon ganz oben ausprobiert habe, nur dummerweise funktioniert es nicht Wo ist mein Denkfehler? Ich bin auf folgendes gestoßen ActionScript:
Irgendwie muss ich da an meine uralten, völlig verrosteten C++ Kenntnisse denken. Da gab es doch was mit "call by reference" und "call by value". Gibt es das in AS auch? Eine schwer grübelnde Astrid |
| | |
| | #7 (permalink) |
| Neuer User Registriert seit: Aug 2002 Ort: Faust-Stadt
Beiträge: 2.577
| das kann wohl funktionieren!! hi na ich weiß jetzt nicht was du willst.du sagst du lädst variablen rein.ok die sind dann als string (zb. a,b,c,d,e,f) nun mache ich ein array mit den variablen namen die ich in float wandeln will.zb("a","b","c").schau mal den unterschied an von meinem array und deinem. nach dem wandel sind a,b,c float mit den werten 100.1. und d,e,f bleiben string.im array ändert sich garnichts. ActionScript:
__________________ gruß Harry Geändert von HAY (28-08-2003 um 17:37 Uhr) |
| | |
| | #8 (permalink) |
| Neuer User Registriert seit: Feb 2003
Beiträge: 26
| Es liegt am _root[...]
@ HAY Vielen Dank für die Hilfe. Du hast völlig recht und ich weiß jetzt auch wo mein Fehler lag. Es liegt an zwei Dingen. Zum einen muss das erzeugt Array die Namen der Variablen als string enthalten, also ActionScript:
ActionScript:
ActionScript:
ActionScript:
ActionScript:
Ob man nur parseFloat oder Number benutzt hat keine Auswirkung auf das Ergebnis. Habe ich das so korrekt dargestellt? Es hat eine Weile gedauert bis der Groschen gefallen ist. Ich habe das hier so ausführlich dargestellt, damit andere mit dem gleichen Problem hier die Lösung finden könnten. Die Sache mit dem _root ist nur schwer zu finden, wenn man nicht weiß, wo man nachschauen soll. Vielen Dank Astrid |
| | |
![]() |
| Lesezeichen |
| Themen-Optionen | |
| Ansicht | |
| |