Wpis z mikrobloga

@ToJestNiepojete: No i to jest poprawne. Dodatkowo do typowania obiektów w pracy korzysta się z interfejsów a nie z typów. Generalnie TS jest baaaaardzo elastyczny i możesz robić w nim co Ci się podoba jeżeli jest to tylko jakkolwiek logiczne.
No to bez sensu, jeśli ts pozwala na rzutowanie niekompletnego obiektu. Wychodzi na to, że jedyną opcją jest deklaracja 'const person: Person {...}', aby ts zwalidował poprawność.


@ToJestNiepojete: Tak, tak się powinno definiować zmienne. Keyword as służy do wyjątkowych sytuacji, kiedy z różnych powodów TypeScript nie jest w stanie zweryfikować kształtu danych ale ty masz pewność, że są poprawne.
@ToJestNiepojete: po co w ogóle robisz to as Person? Nie rób jawnego rzutowania dopóki naprawdę nie musisz. TS sobie poradzi ze swoim wnioskowaniem typów.

Wychodzi na to, że jedyną opcją jest deklaracja 'const person: Person {...}', aby ts zwalidował poprawność.

owszem, ale ja bym poszedł nawet dalej i nie typował nawet tej deklaracji, bo w momencie jej użycia (tzn. próbie przypisania tak stworzonego obiektu do zmiennej która musi być typu
Jawne okreslenie typu pozwala szybciej znalezc bledy


@sp3cooland: meh. Jeśli deklarujesz zmienną lokalną to i tak zaraz jej gdzieś użyjesz wewnątrz funkcji - więc jeśli typ się nie będzie zgadzać, to błąd i tak będzie za chwilę. Ja nigdy nie typuję zmiennych lokalnych i polecam to z całego serca wszystkim, mniejszy szum ¯\_(ツ)_/¯