TypeScriptで手抜きしてanyを使っている箇所って「自分の書いたコードだけど型をきちんと書くのが面倒だからanyにしてる」って場合と「サードパーティのライブラリからやってくる値で、型がなんなのか調べるのが面倒だからanyにしている」ってケースがある。 例えば後者の例で、Firestoreから取ってきたドキュメントオブジェクトの型がよくわからないのでanyにしていた。 code:ts (doc: any) => { ... } これをunknownに変えると… code:ts (doc: unknown) => { ... } unknownにexistsが生えてるからどうか知らないぞ、と指摘される。 きちんとした型をつける必要があるのだが、どうすれば良いか? code:ts if (doc.exists) { // ERROR: Object is of type 'unknown