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