CoffeeScript - Objekte

Objekte in CoffeeScript ähneln denen in JavaScript. Hierbei handelt es sich um eine Sammlung von Eigenschaften, bei denen eine Eigenschaft einen Schlüssel und einen Wert enthält, die durch ein Semikolon getrennt sind (:). Kurz gesagt, CoffeeScript-Objekte sind eine Sammlung von Schlüssel-Wert-Paaren. Die Objekte werden in geschweiften Klammern definiert, ein leeres Objekt wird als dargestellt{}.

Syntax

Im Folgenden wird die Syntax eines Objekts in CoffeeScript angegeben. Hier platzieren wir die Schlüssel-Wert-Paare der Objekte in geschweiften Klammern und sie werden durch Komma getrennt (,).

object ={key1: value, key2: value,......keyN: value}

Beispiel

Im Folgenden finden Sie ein Beispiel für die Definition eines Objekts in CoffeeScript. Speichern Sie diesen Code in einer Datei mit Namenobjects_example.coffee

student = {name: "Mohammed", age: 24, phone: 9848022338 }

Öffne das command prompt und kompilieren Sie die .coffee-Datei wie unten gezeigt.

> coffee -c objects_example.coffee

Beim Kompilieren erhalten Sie das folgende JavaScript.

// Generated by CoffeeScript 1.10.0
(function() {
  var student;

  student = {
    name: "Mohammed",
    age: 24,
    phone: 9848022338
  };

}).call(this);

Genau wie in Arrays können wir die Kommas entfernen, indem wir die Schlüssel-Wert-Paare in neuen Zeilen angeben, wie unten gezeigt.

student = {
  name: "Mohammed" 
  age: 24
  phone: 9848022338 
  }

Einkerbungen statt geschweifter Klammern

Genau wie bei anderen Blockanweisungen in CoffeeScript können wir Einrückungen anstelle von geschweiften Klammern verwenden {} wie im folgenden Beispiel gezeigt.

Beispiel

Wir können das obige Beispiel ohne geschweifte Klammern wie unten gezeigt umschreiben.

student = 
  name: "Mohammed" 
  age: 24
  phone: 9848022338

Verschachtelte Objekte

In CoffeeScript können wir Objekte innerhalb von Objekten schreiben.

Beispiel

Das folgende Beispiel zeigt die verschachtelten Objekte in CoffeeScript. Speichern Sie diesen Code in einer Datei mit Namennested_objects.coffee

contact =
  personal:
    email: "[email protected]"
    phone:  9848022338
  professional:
    email: "[email protected]"
    phone:  9848033228

Öffne das command prompt und kompilieren Sie die .coffee-Datei wie unten gezeigt.

> coffee -c nested_objects.coffee

Beim Kompilieren erhalten Sie das folgende JavaScript.

// Generated by CoffeeScript 1.10.0
(function() {
  var contact;

  contact = {
    personal: {
      email: "[email protected]",
      phone: 9848022338
    },
    professional: {
      email: "[email protected]",
      phone: 9848033228
    }
  };

}).call(this);

Verständnis über Objekte

Um den Inhalt eines Objekts zu durchlaufen, können wir Verständnis verwenden. Das Iterieren des Inhalts eines Objekts entspricht dem Iterieren des Inhalts eines Arrays. In Objekten werden zwei Variablen verwendet, da zwei Schlüssel und Werte für Elemente abgerufen werden müssen.

Beispiel

Das folgende Beispiel zeigt, wie der Inhalt eines Objekts mithilfe von Verständnis iteriert wird. Speichern Sie diesen Code in einer Datei mit Namenobject_comprehensions.coffee

student = 
  name: "Mohammed" 
  age: 24
  phone: 9848022338 

console.log key+"::"+value for key,value of student

Öffne das command prompt und kompilieren Sie die .coffee-Datei wie unten gezeigt.

> coffee -c object_comprehensions.coffee

Beim Kompilieren erhalten Sie das folgende JavaScript.

// Generated by CoffeeScript 1.10.0
(function() {
  var key, student, value;

  student = {
    name: "Mohammed",
    age: 24,
    phone: 9848022338
  };

  for (key in student) {
    value = student[key];
    console.log(key(+"::" + value));
  }

}).call(this);

Öffnen Sie jetzt die command prompt Führen Sie die CoffeeScript-Datei erneut aus, wie unten gezeigt.

> coffee object_comprehensions.coffee

Bei der Ausführung erzeugt die CoffeeScript-Datei die folgende Ausgabe.

name::Mohammed
age::24
phone::9848022338

Arrays von Objekten

In CoffeeScript kann ein Array auch Objekte enthalten, wie unten gezeigt.

a = [
     object1_key1: value
     object1_key2: value
     object1_key3: value
  ,
     object2_key1: value
     object2_key2: value
     object2_key3: value
]

Das folgende Beispiel zeigt, wie Sie ein Array von Objekten definieren. Wir können einfach die Schlüsselwertpaare der gewünschten Objekte in einem Array auflisten, indem wir sie durch Kommas trennen(,).

students =[  
    name: "Mohammed" 
    age: 24
    phone: 9848022338 
  ,  
    name: "Ram" 
    age: 25
    phone: 9800000000 
  ,  
    name: "Ram" 
    age: 25
    phone: 9800000000   
 ]  
console.log student for student in students

Öffne das command prompt und kompilieren Sie die .coffee-Datei wie unten gezeigt.

c:\> coffee -c array_of_objects.coffee

Beim Kompilieren erhalten Sie das folgende JavaScript.

// Generated by CoffeeScript 1.10.0
(function() {
  var i, len, student, students;

  students = [
    {
      name: "Mohammed",
      age: 24,
      phone: 9848022338
    }, {
      name: "Ram",
      age: 25,
      phone: 9800000000
    }, {
      name: "Ram",
      age: 25,
      phone: 9800000000
    }
  ];

  for (i = 0, len = students.length; i < len; i++) {
    student = students[i];
    console.log(student);
  }

}).call(this);

Öffnen Sie jetzt die command prompt Führen Sie die CoffeeScript-Datei erneut aus, wie unten gezeigt.

c:\> coffee array_of_objects.coffee

Bei der Ausführung erzeugt die CoffeeScript-Datei die folgende Ausgabe.

{ name: 'Mohammed', age: 24, phone: 9848022338 }
{ name: 'Ram', age: 25, phone: 9800000000 }
{ name: 'Ram', age: 25, phone: 9800000000 }

Reservierte Schlüsselwörter

JavaScript erlaubt keine reservierten Schlüsselwörter als Eigenschaftsnamen eines Objekts. Wenn wir sie verwenden möchten, müssen wir sie in doppelte Anführungszeichen setzen " ".

Beispiel

Betrachten Sie das folgende Beispiel. Hier haben wir eine Eigenschaft mit Namen erstelltclassDies ist ein reserviertes Schlüsselwort. Speichern Sie diesen Code in einer Datei mit Namenreserved_keywords.coffee

student ={ 
  name: "Mohammed" 
  age: 24
  phone: 9848022338
  class: "X"
  }
console.log key+"::"+value for key,value of student

Öffne das command prompt und kompilieren Sie die .coffee-Datei wie unten gezeigt.

c:\> coffee -c reserved_keywords.coffee

Beim Kompilieren erhalten Sie das folgende JavaScript. Hier können Sie beobachten, dass der CoffeeScript-Compiler die Keyword-Klasse für uns in doppelte Anführungszeichen gesetzt hat.

// Generated by CoffeeScript 1.10.0
(function() {
  var key, student, value;

  student = {
    name: "Mohammed",
    age: 24,
    phone: 9848022338,
    "class": "X"
  };

  for (key in student) {
    value = student[key];
    console.log(key + "::" + value);
  }

}).call(this);

Öffnen Sie jetzt die command prompt Führen Sie die CoffeeScript-Datei erneut aus, wie unten gezeigt.

c:\> coffee array_of_objects.coffee

Bei der Ausführung erzeugt die CoffeeScript-Datei die folgende Ausgabe.

name::Mohammed
age::24
phone::9848022338
class::X