経緯
Typescriptでオブジェクトがもつキーにすべてアクセスしようとしたときに、ちょっとハマったのでメモ
実装
最初に作ったコード
for (let key in params) { console.log(key, params[key]); }
ts7053のエラーが出てくる。
indexの型が特定できないために発生しているらしい。
なので、保持しているプロパティ名と型を取れれば、解消できる。
なので、keyof typeofを使って、名称の方を取得する。
最終的にできたコード
for (key in params) { console.log(key, params[key]); }
このコードにたどり着いたけど、paramsにundefindの可能性がある項目が含まれていると、エラーになるので、初期化する段階で含まれないようにする必要がある。
感想
いろんな原因が複合されてるせいで、解決に時間がかかってしまった。
最終的にできたコードになったけど、エラーが出てきて、???状態だった。
久々にtypescriptやると、わけが分からん。
型定義で沼りそう。