CodeGym /Kurse /Frontend SELF DE /Spezielle Typen in JavaScript

Spezielle Typen in JavaScript

Frontend SELF DE
Level 35 , Lektion 1
Verfügbar

2.1 Variablen sind Referenzen

In JavaScript sind Variablen Referenzen auf Objekte und nicht die Variablen selbst. Das bedeutet, wenn du eine Variable in JavaScript erstellst, erzeugst du einfach eine Referenz auf ein Objekt im Speicher.

Diese Eigenschaft der Sprache hat wichtige Konsequenzen für den Umgang mit Variablen, insbesondere bei der Übergabe von Objekten an Funktionen oder ihrer Zuweisung zu anderen Variablen.

Wenn du eine Variable erstellst und ihr einen Wert zuweist, weist JavaScript dem Wert ein Objekt im Speicher zu und macht die Variable zu einer Referenz auf dieses Objekt. Wenn du eine Variable einer anderen zuweist, wird die neue Variable auf dasselbe Objekt verweisen wie die ursprüngliche Variable. Das bedeutet, dass Änderungen, die über eine Variable vorgenommen werden, sich auch auf die andere auswirken, wenn das Objekt veränderbar ist.

Beispiel:

JavaScript
    
      let a = [1, 2, 3];
      let b = a;

      b.push(4);
      console.log(a);  // Ausgabe: [1, 2, 3, 4]
    
  

Wir haben die Zahl 4 zur Variable b hinzugefügt, aber sie wurde auch zur Liste in der Variable a hinzugefügt, da beide Variablen tatsächlich nur Referenzen auf das Listenobjekt [1, 2, 3] sind.

2.2 Typ undefined

In JavaScript gibt es zwei spezielle Datentypen: null und undefined. Diese Typen werfen oft Fragen bei Entwicklern auf wegen ihrer Ähnlichkeit, aber sie haben unterschiedliche Zwecke und werden in verschiedenen Situationen verwendet. Sehen wir sie uns genauer an.

Typ undefined

Der Typ undefined repräsentiert den Wert einer Variablen, die deklariert, aber nicht initialisiert wurde. Dieser Wert wird auch zurückgegeben, wenn auf eine nicht vorhandene Eigenschaft eines Objekts oder ein nicht existierendes Array-Element zugegriffen wird.

Beispiele

1. Nicht initialisierte Variable:

JavaScript
    
      let x;
      console.log(x); // undefined
    
  

2. Nicht vorhandene Objekteigenschaft:

JavaScript
    
      let obj = {};
      console.log(obj.property); // undefined
    
  

3. Nicht vorhandenes Array-Element:

JavaScript
    
      let array = [1, 2, 3];
      console.log(array[5]); // undefined
    
  

4. Fehlendes Funktionsargument:

JavaScript
    
      function myFunction(a, b) {
        console.log(b); // undefined, falls als myFunction(1) aufgerufen
      }
      myFunction(1);
    
  

Eigenschaften von undefined:

  • undefined ist ein Datentyp und ein Wert
  • typeof undefined gibt undefined zurück

2.3 Typ null

Der Typ null repräsentiert das absichtliche Fehlen eines Wertes. Dieser Wert wird oft verwendet, um Variablen zu initialisieren, die später einem Objekt zugewiesen werden, oder um den Wert einer Variablen zu löschen.

Beispiele

1. Initialisierung einer Variablen:

JavaScript
    
      let obj = null;
      console.log(obj); // null
    
  

2. Löschen eines Variablenwerts:

JavaScript
    
      let user = { name: "Alice" };
      user = null; // user verweist jetzt nicht mehr auf ein Objekt
    
  

Eigenschaften von null:

  • null ist ein Wert, der das absichtliche Fehlen eines Wertes darstellt
  • typeof null gibt object zurück, was ein anerkannter Fehler in der JavaScript-Sprache ist (tatsächlich ist null kein Objekt)

2.4 Vergleich von null und undefined

Obwohl null und undefined zur Darstellung des Fehlens eines Wertes verwendet werden können, unterscheiden sie sich in Zweck und Kontext der Verwendung.

Eigenschaft null undefined
Typ Primitiver Typ Primitiver Typ
Zweck Absichtliches Fehlen eines Wertes Nicht initialisierte Variable
Verwendung Initialisierung von Variablen, Löschung von Werten Nicht vorhandene Eigenschaften, Array-Elemente
Standardwert Nein Ja (für nicht initialisierte Variablen, Funktionsparameter)

Beispiele für die Verwendung

1. Initialisierung einer Variablen mit einem Objekt oder Array:

JavaScript
    
      let myObject = null;
      let myArray = null;
    
  

2. Überprüfung von Werten:

JavaScript
    
      let value;

      if (value === undefined) {
        console.log("Die Variable ist nicht initialisiert.");
      }

      let result = null;

      if (result === null) {
        console.log("Fehlen eines Wertes.");
      }
    
  

3. Löschen von Werten:

JavaScript
    
      let person = { name: "Alice" };
      person = null; // Jetzt verweist person nicht mehr auf ein Objekt
    
  

4. Überprüfung auf das Vorhandensein einer Eigenschaft:

JavaScript
    
      let obj = {};

      if (obj.property === undefined) {
        console.log("Die Eigenschaft existiert nicht.");
      }
    
  

Das Verständnis der Unterschiede zwischen null und undefined in JavaScript ist wichtig, um Werte richtig zu verwalten und Fehler im Code zu vermeiden.

undefined weist normalerweise auf nicht initialisierte Variablen oder fehlende Eigenschaften hin, während null zur expliziten Angabe des Fehlens eines Wertes verwendet wird.

Der richtige Umgang mit diesen speziellen Datentypen macht den Code verständlicher und vorhersehbarer.

Kommentare
TO VIEW ALL COMMENTS OR TO MAKE A COMMENT,
GO TO FULL VERSION