GEDOPLAN
Webprogrammierung

TypeScript Magie für Java Entwickler (Level 2)

Webprogrammierung
ts level2 png

Als Fullstackentwickler ist man mit einem bunten Blumenstrauß an Technologien gesegnet. Insbesondere JavaScript und TypeScript ist für viele Java Entwickler erst einmal ungewohntes Terrain. Diese kleine Serie zeigt zumindest einige Features über die der ein oder andere Java Entwickler sicherlich den Kopf schütteln wird (bis er sie lieben gelernt hat 🙂 )

Generics? JaJa…die haben wir doch auch in TypeScript: Generics

function search<T>(query: T, items: T[]): T[] | T {
    return items.filter(i => i === query)
}

Oller Hut? TypeSkript bleibt flexibel: Generic Constraints (Type Parameters)

function avgAge<T extends { age: number }>(items: T[]): number {
    const ages = items.map(itm => itm.age);
    return ages.reduce((a, b) => a + b, 0) / ages.length
}

1,2,3…gib mir so viel du hast: Rest Parameter

function createMultiMessageNews(title: string, ...messages: string[]) {
    // impl
}

createMultiMessageNews('News-Flash', 'Hello')
createMultiMessageNews('News-Flash', 'Hello', 'World')

Handwerklich begabt: Destructuring

// Parameter Destructuring
function postMessage1({title, message}: News) {
    console.log(title);
    console.log(message);
}

//Object Destructing
function postMessage2(news: News) {
    const {title, message} = {...news};

    console.log(title);
    console.log(message);
}

// Array Destructing
function postFirstMessage(news: News[]) {
    const [publishNews, ...rest] = [...news]
    console.log(publishNews)
}

// harmoniert mit dem oben genannten Rest Parameter
createMultiMessageNews('News-Flash', ...['Hello', 'World'])

Wie Weihnachten. Ein- und Aus-packen: Spreading

let objectA = {a: 'a'};
let objectB = {b: 'b'};
let objectABC = {...objectA, ...objectB, c: 'c'};

Schreibe einen Kommentar

Deine E-Mail-Adresse wird nicht veröffentlicht. Erforderliche Felder sind mit * markiert

Bitte füllen Sie dieses Feld aus.
Bitte füllen Sie dieses Feld aus.
Bitte gib eine gültige E-Mail-Adresse ein.
Sie müssen den Bedingungen zustimmen, um fortzufahren.

Autor

Diesen Artikel teilen

LinkedIn
Xing

Gibt es noch Fragen?

Fragen beantworten wir sehr gerne! Schreibe uns einfach per Kontaktformular.

Kurse

weitere Blogbeiträge

Work Life Balance. Jobs bei Gedoplan

We are looking for you!

Lust bei GEDOPLAN mitzuarbeiten? Wir suchen immer Verstärkung – egal ob Entwickler, Dozent, Trainerberater oder für unser IT-Marketing! Schau doch einfach mal auf unsere Jobseiten! Wir freuen uns auf Dich!

Work Life Balance. Jobs bei Gedoplan

We are looking for you!

Lust bei GEDOPLAN mitzuarbeiten? Wir suchen immer Verstärkung – egal ob Entwickler, Dozent, Trainerberater oder für unser IT-Marketing! Schau doch einfach mal auf unsere Jobseiten! Wir freuen uns auf Dich!