Avatar ·

Wie überprüft man, ob ein Wert in einem enum in TypeScript existiert?

Hallo zusammen! Ich habe gerade angefangen, TypeScript zu lernen, und bin auf ein Problem bei der Arbeit mit enums gestoßen. Ich habe diesen Code: ```typescript enum Color { Red = 'RED', Green = 'GREEN', Blue = 'BLUE' } // Ich erhalte einen Wert aus einer externen Quelle (z.B. von einer API) const userInput: string = 'RED'; // oder vielleicht 'YELLOW' // Ich muss überprüfen, ob userInput ein gültiger Color-Wert ist if (userInput === Color.Red) { console.log('Das ist rot'); } ``` Das Problem ist, dass wenn ich einen Wert erhalte, der nicht im enum existiert (z.B. 'YELLOW'), muss ich diese Situation korrekt behandeln. Ich habe versucht, `Object.values(Color).includes(userInput)` zu verwenden, aber TypeScript beschwert sich, dass `userInput` den Typ `string` hat, nicht `Color`. Könnt ihr mir bitte sagen, wie man richtig überprüft, ob ein Wert in einem enum existiert? Muss ich spezielle Hilfsmittel verwenden oder gibt es eine einfache Lösung? Danke im Voraus! P.S. Ich verwende string enums, aber es wäre nützlich zu wissen, ob es einen Unterschied bei numerischen enums gibt.