Home | Notifications | New Note | Local | Federated | Search | Logout

Note Detail


きゅーけー@tojoqk@mastodon.tojo.tokyo (2025-12-13 00:22:50)
TypeScript、一見安全そうにみえる7行のコードで任意の型(neverを除く)になりすませるというこの現実。

```
const convert = <T, S>(value: T, witness: S): S => {
const obj1 = { a: witness } satisfies { a: S };
const obj2 = { a: value } satisfies { a: T };
const empty = (): {} => obj2;
const obj = { ...obj1, ...empty() } satisfies { a: S };
return obj.a;
};
```
https://qiita.com/tojoqk/items/1e37896757f847c97948
Reply