Verwendung des Schlüsselworts never in TypeScript

Muhammad Ibrahim Alvi 15 Februar 2024
Verwendung des Schlüsselworts never in TypeScript

Dieses Tutorial bietet eine kurze Anleitung zur Verwendung des neuen Datentyps im TypeScript-Schlüsselwort never mit den beliebten Anwendungsfällen, die unter den Entwicklern verwendet werden.

Verwendung des Schlüsselworts never in TypeScript

Das Schlüsselwort never ist ein neuer Typ in TypeScript, der die Werte angibt, die niemals vorkommen werden. Der nie-Typ wird verwendet, wenn der Programmierer sicher ist, dass etwas nicht passieren wird.

Nehmen wir nun an, dass Sie eine Funktion schreiben, die immer eine Ausnahme auslöst oder nie zu ihrem Endpunkt zurückkehrt.

Codebeispiel:

function throwNewError(errorMsg: string): never {
            throw new Error(errorMsg);
}

function keepInfiniteProcessing(): never {
            while (true) {
         console.log('I always does something and never ends :).')
     }
}
console.log(throwNewError("Error occured"));

Im obigen Codierungsbeispiel wird die Funktion throwNewError() immer einen Fehler auslösen, wenn sie aufgerufen wird, und andererseits wird die Funktion keepInfiniteProcessing() immer weiter ausgeführt und wird nie ihren Endpunkt erreichen, weil die While-Schleife hat eine wahre Bedingung, die die Schleife niemals beendet und niemals endet. Daher wird der Typ nie in TypeScript verwendet, um den Wert anzugeben, der niemals von einer Funktion auftreten oder zurückgegeben wird.

Ausgang:

While-Schleife hat eine wahre Bedingung, die immer einen Fehler auslöst, wenn sie aufgerufen wird

Die Variablen nehmen auch den Typ nie an, wenn sie durch den Wächter des Typs beliebig eingeengt werden, der niemals wahr sein kann. Der Variablentyp kann mit Operatoren wie in, typeof, instanceof eingeengt werden.

Wir können den Typ für die Variable eingrenzen, bei der wir sicher sind, dass diese an einigen Stellen niemals auftreten werden.

Codebeispiel:

function formatFunction(valueData: string | number) {
    if (typeof valueData === 'string') {
        return valueData.trim();
    } else {
        return valueData.toFixed(2); // we're sure it's number
    }
    // not a string or number
    // "value" can't occur here, so it's type "never"
}

let response = formatFunction("Hello");
    console.log(response);

Ausgang:

grenzen Sie den Typ für die Variable ein, die an manchen Stellen nie vorkommt

Muhammad Ibrahim Alvi avatar Muhammad Ibrahim Alvi avatar

Ibrahim is a Full Stack developer working as a Software Engineer in a reputable international organization. He has work experience in technologies stack like MERN and Spring Boot. He is an enthusiastic JavaScript lover who loves to provide and share research-based solutions to problems. He loves problem-solving and loves to write solutions of those problems with implemented solutions.

LinkedIn

Verwandter Artikel - TypeScript Keyword