»» Ich möchte ein Objekt mit diversen Eigenschaften an eine Funktion übergeben, wobei einige Eigenschaften Namen von Variablen sind (varVisu), in welche die Funktion Werte schreiben soll.
Was genau machst du mit diesen Werten und warum nutzt du Variablennamen?
Wenn du ein solches Objekt hast:
{
Visu: anzeig.fenst.kz,
PlcType: 'BOOL',
PlcAddr: 50
}Kannst du doch prima auf die Eigenschaften zugreifen. Wieso musst du sie in Variablen umwandeln? Ws sind das für Variablen? Sollen das globale Variablen werden?
Das ganze ist eine Zuordnungsliste für einen Parser. Das Objekt stellt im Prinzip eine Verknüpfung dar, und zwar zwischen der Quelle (PlcAddr) und der Zielvariable (anzeig.fenst.kz) und der Angabe für die Konvertierungsmethode.
Eine Funktion bekommt die Liste mit den Verknüpfungen und den Daten in Form eines Strings, schneidet Teile an Hand der Adresse aus, wandelt diese um und schreibt die Werte in die angegebene Zielvariable. Diese Zielvariablen werden vom Anwender vergeben.
»» Mir fallen jetzt 2 Möglichkeiten ein. Entweder übergebe ich den Variablennamen als String und nutze eval() oder ich übergebe Objekte und lasse mir die Werte in eine Eigenschaft schreiben.
Du übergibst doch schon Objekte?
Wenn du Objekteigenschaften befüllen kannst anstatt mit eval Variablen anzulegen (wieso solltest du?), dann tue dies.»» Was ist besser?
Der Verzicht auf eval.
Mathias