Sobes.tech
Junior — Middle

Lehetséges a Type Assertion operátort általános típusokkal használni a TypeScript-ben?

sobes.tech MI

Válasz az MI-től

A kérdés a TypeScript-re vonatkozik, de a modul Golang-ként van megadva, ezért tisztázom a TypeScript-et.

TypeScript-ben az típusállítási operátor (Type Assertion) lehetővé teszi a fordítónak, hogy jelezze, hogy egy kifejezésnek adott típusúnak kell lennie. Ez általános típusokkal (generics) is lehetséges.

Például, ha van egy általános függvényed:

type Wrapper<T> = { value: T };

function unwrap<T>(wrapper: Wrapper<T>): T {
  return (wrapper as Wrapper<T>).value;
}

Itt az as Wrapper<T> egy típusállítási operátor általános típusúval.

Fontos megérteni, hogy a típusállítás nem változtatja meg az objektumot futási időben, csak a típusellenőrzést befolyásolja fordítás közben.

Ezért a típusállítási operátor korlátozások nélkül használható általános típusokkal TypeScript-ben.