エントリーの編集
![loading...](https://b.st-hatena.com/bdefb8944296a0957e54cebcfefc25c4dcff9f5f/images/v4/public/common/loading@2x.gif)
エントリーの編集は全ユーザーに共通の機能です。
必ずガイドラインを一読の上ご利用ください。
TypeScriptで keyof T が string | number | symbol に推論される理由の調査
記事へのコメント0件
- 注目コメント
- 新着コメント
このエントリーにコメントしてみましょう。
注目コメント算出アルゴリズムの一部にLINEヤフー株式会社の「建設的コメント順位付けモデルAPI」を使用しています
![アプリのスクリーンショット](https://b.st-hatena.com/bdefb8944296a0957e54cebcfefc25c4dcff9f5f/images/v4/public/entry/app-screenshot.png)
- バナー広告なし
- ミュート機能あり
- ダークモード搭載
関連記事
TypeScriptで keyof T が string | number | symbol に推論される理由の調査
https://zenn.dev/jiftechnify/articles/2489f4103918a2 の中で問題になった、以下の挙動について理由を... https://zenn.dev/jiftechnify/articles/2489f4103918a2 の中で問題になった、以下の挙動について理由を調べた。 Record<string, ...>型の変数に数値をキーに持つオブジェクトを代入できる keyof Tが、 Tの具体的な型が確定しない状況で string | nunber | symbolと推論される 結論からいうと、TypeScript 2.9で入った仕様だった。さらにいえば、このリリースノートに(上記の記事で紹介したものよりも遥かに単純な)対処法も載っていた…。 上記リリースノートから関連する部分を引用。 Changes include: An index type keyof T for some type T is a subtype of string | number | symbol. Given an objec