filterメソッドから吐き出されるデータからundefinedを取り除きたい
公開: 2024-02-14
更新: 2024-05-13
いいね: 0 件
コメント: 0 件
カテゴリ:
programming
タグ:
JavaScript
TypeScript
Array
TypeScriptで開発していると,配列の中身がundefinedになるケースがたまにあって,
javascript
みたいな配列が生まれてしまうことがやむなし.みたいな状況になることがある.
このときこの型は(string | undefined)[]だが,
それをfilterメソッドを使って,
javascript
みたいなことをするとすると思うのですが,型は変わらずundefinedが含まれていて,
おい(# ゚Д゚)
っというのを誰もが経験したことがあるかと思います.
これがJavaScriptなのです.
しかし,これを解決する書き方をCopilotさんに提案していただけたので共有します.
javascript
!!vの部分はtypeof v === "string"のほうが厳密ですが,これはお好きに.
これはユーザー定義のType Guardといって関数の戻り地にisを使って記述することができます.(詳しい説明は割愛)