tutorials.de Buch-Aktion 05/2012
ERLEDIGT
JA
ANTWORTEN
4
ZUGRIFFE
363
EMPFEHLEN
  • An Twitter übertragen
  • An Facebook übertragen
AUF DIESES THEMA
ANTWORTEN
  1. #1
    Avatar von greggy80
    greggy80 greggy80 ist offline Mitglied Silber
    Registriert seit
    Feb 2005
    Beiträge
    75
    Hallo zusammen,

    ich bin eigentlich ein versierter Java-Programmier und komme mit JavaScript gerade etwas ins Würgen... ich habe ein allgemeines Objekt erzeugt... etwa so:

    Code :
    1
    
    var obj = new Object()
    Nun wird dieses Objekt ja irgendwie mal eine eindeutige, identifizierbare ID bekommen haben. Irgendeine Nummer... wie es ja bei Java auch ist.

    Die Frage: kann man diese Nummer irgendwie auslesen? Oder kennt jemand eine Alternative, wie ich jedem neu erzeugtem beliebigen Objekt eine eindeutige Nummer zuweisen kann?

    Ich finde nichts vernünftiges im Netz
     
    "Kunst kommt von Können und nicht von Wollen... sonst würde es ja Wunst heißen!"

  2. #2
    Avatar von Sven Mintel
    Sven Mintel Sven Mintel ist offline Mitglied
    Registriert seit
    Aug 2003
    Beiträge
    18.238
    Blog-Einträge
    6
    Moin,

    nö, solche IDs gibts in JS nicht. Wenn du mal den Handle zu dem Objekt verloren hast, und es nicht über einen von dir vergebenen Namen ansprechbar ist, dann ist es ausser jeder Reichweite.

    Einen eindeutigen Identifikator wirst du zu 100% auch nicht hinbekommen, über einen Timestamp und ein selbstgewähltes Prefix/Suffix sollte sich da aber etwas Brauchbares konstruieren lassen.
     

  3. #3
    Avatar von greggy80
    greggy80 greggy80 ist offline Mitglied Silber
    Registriert seit
    Feb 2005
    Beiträge
    75
    Ok, aber zwei Objekte miteinander vergleichen geht doch?
    Also sowas hier:

    Code :
    1
    2
    3
    4
    5
    6
    7
    8
    9
    10
    11
    12
    
    var obj1 = new Object();
    var obj2 = new Object();
     
    //Compare by reference
     
    if (obj1 == obj2)
      alert(true); //Das hier tritt nicht ein
     
    obj2 = obj1;
     
    if (obj1 == obj2)
      alert(true); //Das hier tritt ein
    Wenn das nicht klappt, hab ich ein Problem. Wenn das klappt, dann frage ich mich, warum man sich die Referenzadresse nicht auch ausgeben lassen kann. Das ist ja der totale Humbug...

    Vielen Dank schon mal für die Antwort!
     
    "Kunst kommt von Können und nicht von Wollen... sonst würde es ja Wunst heißen!"

  4. #4
    Avatar von Sven Mintel
    Sven Mintel Sven Mintel ist offline Mitglied
    Registriert seit
    Aug 2003
    Beiträge
    18.238
    Blog-Einträge
    6
    Jo, Objekte miteinander vergleichen, das geht.

    Zu dem anderen: meinst du damit, dass ein Objekt von sich aus nicht weiss, wie es heisst/unter welchem (Variablen)namen es erzeugt wurde?
     

  5. #5
    Avatar von greggy80
    greggy80 greggy80 ist offline Mitglied Silber
    Registriert seit
    Feb 2005
    Beiträge
    75
    Ja, doch, das funktioniert ja IMHO in JavaScript. Ist zwar ein schrecklicher Programmierstil, wenn man überhaupt Bedarf hat, den Namen herauszufinden. Aber das geht.

    Es ging mir nur darum, zu jedem erzeugten Datenbereich, ähnlich wie in C einen Pointer, die Referenzadresse zu bekommen. Aber ich habe inzwischen auch einen Lösungsansatz, der ohne diese Referenznummern auskommt also halb so schlimm.

    Danke nochmals!
     
    "Kunst kommt von Können und nicht von Wollen... sonst würde es ja Wunst heißen!"

Ähnliche Themen

  1. Korrekte Rückgabe eines Objekts
    Von Cyraid im Forum C/C++
    Antworten: 11
    Letzter Beitrag: 15.05.10, 20:37
  2. Wurf eines Objekts
    Von Cromon im Forum Coders Talk
    Antworten: 9
    Letzter Beitrag: 22.04.10, 19:44
  3. Polygone eines Objekts unterteilen
    Von ProWick im Forum Cinema 4D
    Antworten: 3
    Letzter Beitrag: 13.01.10, 17:26
  4. Nachbelichten eines Ai-Objekts
    Von jassebutter im Forum Vektor-Programme
    Antworten: 7
    Letzter Beitrag: 20.08.09, 14:23
  5. Rekonvertierung eines Objekts möglich?
    Von pixels pix im Forum Cinema 4D
    Antworten: 3
    Letzter Beitrag: 07.06.07, 22:04