エントリーの編集
エントリーの編集は全ユーザーに共通の機能です。
必ずガイドラインを一読の上ご利用ください。
エントリーの編集は全ユーザーに共通の機能です。
必ずガイドラインを一読の上ご利用ください。
注目コメント算出アルゴリズムの一部にLINEヤフー株式会社の「建設的コメント順位付けモデルAPI」を使用しています
はじめに Specteeでエンジニアをしている永野です。 TypeScript での開発において、DB や Web API から... はじめに Specteeでエンジニアをしている永野です。 TypeScript での開発において、DB や Web API から取得した値が any 型になっていることがよくありますが、any をそのまま使ったり as で型アサーションをすることが危険であることはよく知られています。 そして、それらの危険性を回避するためにユーザー定義型ガードを使用することがあるかと思います。 しかし、ユーザー定義型ガードは危険性の存在する範囲を狭めることは出来ますが、完全に排除することは出来ません。 そこで、今回はユーザー定義型ガードの代わりに Valibot を使用する方法を紹介します。 ユーザー定義型ガードの危険性 ユーザー定義型ガードでは、判定ロジックに間違いがあると不適切な型が付与されてしまう可能性があります。 例えば以下のようなコードです。 function isUser(value: any)