[JavaScript] "Pointer" auf Variable

Dieses Thema im Forum "Webentwicklung" wurde erstellt von Hanskopf, 20. November 2011 .

Status des Themas:
Es sind keine weiteren Antworten möglich.
  1. 20. November 2011
    "Pointer" auf Variable

    Hi,
    gibt es in JavaScript sowas wie Pointer auf Variabeln ?
     
  2. 20. November 2011
    AW: "Pointer" auf Variable

    du hast dir also immer noch nicht die grundlagen von javascript angeeignet?

    kurz: in javascript gibt es keine pointer, sondern nur referenzen und eben solche gehen verloren wenn du neue werte zuweist.

    Code:
    var obj = { foo: 1; };
    var foo = obj.foo; // foo ist nun eine referenz auf obj.foo
    foo = 2; // referenz geht verloren, foo ist nun "2"
    
    alert(obj.foo); // 1
    Code:
    var bar = obj; // bar ist nun eine referenz auf obj
    bar.foo = 2; // rate mal
    
    alert(obj.foo); // 2
    dein problem:
    Code:
    var globaleVariableA;
    var globaleVariableB;
    var globaleVariableC;
    
    function rechne(choice) {
     var aim;
    
     switch (choice) {
     case "VarA":
     aim = "globaleVariableA";
     break;
     case "VarB":
     aim = "globaleVariableB";
     break;
     case "VarC":
     aim = "globaleVariableC";
     break;
     }
     
     window[aim] *= 2;
    }
    -------------------

    gut zu wissen: nur echte objekte und arrays erzeugen referenzen.
    scalar-werte (string, number, boolean) werden kopiert, es sei denn du erzeugst explizit eine instanz davon.

    wo ist der unterschied?
    javascript wandelt scalar-werte erst in objekte um, wenn eine methode/eigenschaft des prototypen benötigt wird.

    beispiel:
    Code:
    var foo = "hallo";
    var bar = new String("hallo");
    
    console.log(foo === bar); // false
    // der wert in `foo` entspricht nicht der String-instanz `bar`
    
    console.log(foo == bar); // true
    // der wert in `foo` entspricht inhaltlich der String-instanz `bar`
    
    console.log(foo === bar.toString()); // true
    // nun ist `foo` und `bar` identisch, da toString() den wert zurück gibt
     
  3. 22. November 2011
    AW: "Pointer" auf Variable

    Danke
     
  4. Video Script

    Videos zum Themenbereich

    * gefundene Videos auf YouTube, anhand der Überschrift.