• Najnowsze pytania
  • Bez odpowiedzi
  • Zadaj pytanie
  • Kategorie
  • Tagi
  • Zdobyte punkty
  • Ekipa ninja
  • IRC
  • FAQ
  • Regulamin
  • Książki warte uwagi

question-closed Sprawdzanie typu - Typescript

Mały hosting, OGROMNE możliwości
+1 głos
350 wizyt
pytanie zadane 15 maja 2022 w JavaScript przez Bakkit Dyskutant (7,600 p.)
zamknięte 16 maja 2022 przez Bakkit

Cześć mam taki typ:

type TYP = 'STRING_1' | 'STRING_2' | 'STRING_3';

Oraz zmienną typu string o nazwie 

jakas_zmienna

Jak mogę sprawdzić czy typ tej zmiennej pasuje do typu TYP?

 

Oczekuję takiego rezultatu:

if (warunek sprawdzający tym) {
    // wykonuje jakąś akcje
}

 

komentarz zamknięcia: https://forum.pasja-informatyki.pl/566407/sprawdzanie-typu-typescript?show=566409#a566409

1 odpowiedź

+4 głosów
odpowiedź 15 maja 2022 przez Wiciorny Ekspert (283,260 p.)
wybrane 16 maja 2022 przez Bakkit
 
Najlepsza

Nie można używać samego  typeof podczas wykonywania programu  do sprawdzania typów danego interfejsu, które istnieją tylko w czasie kompilacji. Zamiast tego możesz napisać funkcje która w tym pomoże 

const constValuesOfType = ['STRING_1', 'STRING_2' , 'STRING_3']
type TYPE = (typeof constValuesOfType)[number];
const isYourType = (x: any): x is TYPE => constValuesOfType.includes(x);

if (isYourType(twoja_zmienna)) {
  // cos 
}

https://www.typescriptlang.org/docs/handbook/2/narrowing.html#using-type-predicates

1
komentarz 16 maja 2022 przez Bakkit Dyskutant (7,600 p.)
Działa, muszę się jeszcze nieco podszkolić z TypeScript'a.

Dziękuję bardzo.

Podobne pytania

0 głosów
1 odpowiedź 435 wizyt
0 głosów
0 odpowiedzi 220 wizyt
pytanie zadane 4 października 2023 w JavaScript przez reaktywny Nałogowiec (46,230 p.)
0 głosów
0 odpowiedzi 740 wizyt
pytanie zadane 7 września 2022 w JavaScript przez niezalogowany

93,715 zapytań

142,629 odpowiedzi

323,261 komentarzy

63,259 pasjonatów

Motyw:

Akcja Pajacyk

Pajacyk od wielu lat dożywia dzieci. Pomóż klikając w zielony brzuszek na stronie. Dziękujemy! ♡

Oto polecana książka warta uwagi.
Pełną listę książek znajdziesz tutaj

Twierdza Linux. Bezpieczeństwo dla dociekliwych

Aby uzyskać rabat -10%, użyjcie kodu pasja-linux, wpisując go w specjalne pole w koszyku.

...