ECMAScript 2022: Ein Anfängerleitfaden für die neuesten JavaScript-Funktionen
Hallo da, zukünftiger Codingsuperstar! ? Ich freue mich sehr, dein Guide auf dieser aufregenden Reise durch die neuesten und besten Funktionen von JavaScript zu sein, Specifically ECMAScript 2022. Mach dir keine Sorgen, wenn du neu im Programmieren bist – wir gehen es Schritt für Schritt und ich verspreche, es so unterhaltsam und leicht verständlich wie möglich zu gestalten. Also hol dir dein liebstes Getränk, setze dich bequem hin und tauchen wir ein!
Was ist ECMAScript 2022?
Bevor wir uns den neuen Funktionen zuwenden, lassen wir uns schnell über ECMAScript unterhalten. Stell dir vor, ECMAScript ist der schicke, offizielle Name für JavaScript. Jedes Jahr bekommt die JavaScript-Sprache einige coole neue Updates, und ECMAScript 2022 (auch bekannt als ES13) ist die neueste Version. Es ist, als hätte JavaScript ein glänzendes neues Outfit und einige Superkräfte bekommen!
Neue Funktionen in ECMAScript 2022 hinzugefügt
ECMAScript 2022 bringt uns mehrere aufregende neue Funktionen, die unser Codingleben einfacher und spaßiger machen. Lassen wir uns jede von ihnen mit einigen Beispielen erkunden, die sogar deine Großmutter verstehen könnte (wenn sie eine technikaffine Großmutter ist).
Array at() Methode
Stell dir vor, du hast eine Schachtel mit bunten Filzstiften und möchtest einen bestimmten einen herauspicken, ohne jedes Mal von vorne zu zählen. Genau das macht die at()
Methode für Arrays!
const crayons = ['rot', 'blau', 'grün', 'gelb', 'lila'];
console.log(crayons.at(2)); // Ausgabe: 'grün'
console.log(crayons.at(-1)); // Ausgabe: 'lila'
In diesem Beispiel gibt crayons.at(2)
uns den dritten Filzstift (denken wir daran, dass wir im Programmieren von 0 an zählen), der 'grün' ist. Das Coolste daran ist, dass wir auch negative Zahlen verwenden können, um von hinten zu zählen. Also gibt crayons.at(-1)
uns den letzten Filzstift, 'lila'.
String at() Methode
Die at()
Methode ist nicht nur für Arrays – Strings dürfen auch mitfeiern! Es funktioniert auf die gleiche Weise und lässt uns spezifische Zeichen aus einem String auswählen.
const begrüßung = 'Hallo, Welt!';
console.log(begrüßung.at(0)); // Ausgabe: 'H'
console.log(begrüßung.at(-1)); // Ausgabe: '!'
Hier gibt begrüßung.at(0)
uns das erste Zeichen 'H' und begrüßung.at(-1)
gibt uns dasletzte Zeichen '!' zurück. Es ist, als hätte man einen magischen Zeiger, der zu jedem Teil des Strings springen kann!
Private Methoden und Felder
Stell dir vor, wir erstellen ein supergeheimes Spionagegerät. Wir möchten, dass einige Teile unseres Geräts vor neugierigen Augen verborgen bleiben. Genau hier kommen private Methoden und Felder ins Spiel!
class SpyGadget {
#secretCode = '007'; // Private Feld
#activateInvisibility() { // Private Methode
console.log('Unsichtbarkeit aktiviert!');
}
useGadget() {
console.log(`Gadget mit Code verwenden: ${this.#secretCode}`);
this.#activateInvisibility();
}
}
const gadget = new SpyGadget();
gadget.useGadget();
// Ausgabe:
// Gadget mit Code verwenden: 007
// Unsichtbarkeit aktiviert!
// Dies würde einen Fehler verursachen:
// console.log(gadget.#secretCode);
// gadget.#activateInvisibility();
In diesem Beispiel sind #secretCode
und #activateInvisibility()
privat – sie können nur innerhalb der SpyGadget
Klasse verwendet werden. Es ist, als hätte man einen geheimen Raum in deinem Spionagegerät, den nur du öffnen kannst!
Object hasOwn() Methode
Stell dir vor, du bist ein Detektiv, der versucht herauszufinden, ob ein Verdächtiger ein bestimmtes Objekt besitzt. Die Object.hasOwn()
Methode ist wie dein zuverlässiger Lupe, der dir hilft zu bestimmen, ob ein Objekt eine bestimmte Eigenschaft hat.
const verdächtiger = {
name: 'John Doe',
alter: 30
};
console.log(Object.hasOwn(verdächtiger, 'name')); // Ausgabe: true
console.log(Object.hasOwn(verdächtiger, 'adresse')); // Ausgabe: false
In diesem Fall hat unser verdächtiger
Objekt eine name
Eigenschaft, aber keine adresse
Eigenschaft. Object.hasOwn()
hilft uns, dies schnell und einfach zu bestätigen.
Die error.cause Eigenschaft
Wenn Dinge in unserem Code schief gehen (und glaub mir, sie werden es), ist es hilfreich zu wissen, warum. Die error.cause
Eigenschaft ist wie das Notizbuch eines Detektivs, das uns mehr Details über die Ursache eines Fehlers gibt.
function fetchData() {
throw new Error('Failed to fetch data', { cause: 'Network disconnected' });
}
try {
fetchData();
} catch (error) {
console.log(error.message); // Ausgabe: 'Failed to fetch data'
console.log(error.cause); // Ausgabe: 'Network disconnected'
}
Hier werfen wir nicht nur einen allgemeinen Fehler. Wir geben zusätzliche Informationen darüber, was den Fehler verursacht hat, was die Fehlersuche viel einfacher macht. Es ist, als ob man für deinen zukünftigen Ich Brotkrumen hinterlässt!
Das Await Import
Last but not least, lassen wir uns über die neue await import()
Funktion unterhalten. Es ist wie das Bestellen einer Pizza – du kannst jetzt warten, bis deine "Zutaten" (oder in diesem Fall, Module) ankommen, bevor du sie in deinem Code verwendest.
const button = document.querySelector('button');
button.addEventListener('click', async () => {
const module = await import('./api-module.js');
module.callAPI();
});
In diesem Beispiel laden wir nur api-module.js
, wenn der Knopf geklickt wird. Dies kann unsere Webseiten schneller laden lassen, da wir nicht alles upfront laden. Es ist wie ein just-in-time Pizza-Lieferung für deinen Code!
Fazit
Und hier haben wir es, Leute! Wir haben eine rasante Tour durch die aufregenden neuen Funktionen von ECMAScript 2022 gemacht. Denke daran, dass das Lernen zu programmieren eine Reise, keine Destination ist. Mach dir keine Sorgen, wenn alles nicht sofort klickt – weiter üben, weiter experimentieren und vor allem, weiter Spaß haben!
Hier ist eine schnelle Zusammenfassung der Methoden, die wir gelernt haben, in einer praktischen Tabellenform:
Methode/Funktion | Beschreibung |
---|---|
Array.at() | Greift auf Array-Elemente mit positiven und negativen Integer zu |
String.at() | Greift auf String-Zeichen mit positiven und negativen Integer zu |
Private Methoden und Felder | Erstellt private Klassenmember mit dem # Präfix |
Object.hasOwn() | Überprüft, ob ein Objekt eine bestimmte eigene Eigenschaft hat |
error.cause | Bietet zusätzliche Informationen über die Ursache eines Fehlers |
await import() | Dynamisch Module in einem asynchronen Kontext importieren |
Weiter codieren, weiter lernen, und bevor du es weißt, wirst du erstaunliche Dinge mit JavaScript erstellen. Bis zum nächsten Mal, fröhliches Coden! ??
Credits: Image by storyset