[フレーム]
はてなブックマークアプリ

サクサク読めて、
アプリ限定の機能も多数!

アプリで開く

気に入った記事をブックマーク

  • 気に入った記事を保存できます
    保存した記事の一覧は、はてなブックマークで確認・編集ができます
  • 記事を読んだ感想やメモを書き残せます
  • 非公開でブックマークすることもできます
適切な情報に変更

エントリーの編集

loading...

エントリーの編集は全ユーザーに共通の機能です。
必ずガイドラインを一読の上ご利用ください。

タイトルガイドライン

このページのオーナーなので以下のアクションを実行できます

タイトル、本文などの情報を
再取得することができます
コメントを非表示にできます コメント表示の設定

ブックマークしました

ここにツイート内容が記載されます https://b.hatena.ne.jp/URLはspanで囲んでください

Twitterで共有

ONにすると、次回以降このダイアログを飛ばしてTwitterに遷移します

62users がブックマーク コメント 5

ガイドラインをご確認の上、良識あるコメントにご協力ください

0 / 0
入力したタグを追加

現在プライベートモードです 設定を変更する

おすすめタグタグについて

よく使うタグ

TypeScriptのexhaustiveness checkをスマートに書く

62 users zenn.dev/qnighy

ガイドラインをご確認の上、良識あるコメントにご協力ください

0 / 0
入力したタグを追加

現在プライベートモードです 設定を変更する

おすすめタグタグについて

よく使うタグ

はてなブックマーク

はてなブックマークで
関心をシェアしよう

みんなの興味と感想が集まることで
新しい発見や、深堀りがもっと楽しく

ユーザー登録

アカウントをお持ちの方はログインページ

記事へのコメント5

  • 注目コメント
  • 新着コメント
Haaaa_N
おおう...黒魔術だ...とは言え、自分の場合TSだけ考えれば良いから実行時は考えなくても良いのかな

その他
efcl
`as { type: "__invalid__" }`でneverの代わり

その他
razokulover
よさそう

その他
gfx
これはよいイディオム。

その他
jay-es
ヘルパー関数や never を使わずに網羅性チェックする方法

その他

注目コメント算出アルゴリズムの一部にLINEヤフー株式会社の「建設的コメント順位付けモデルAPI」を使用しています

リンクを埋め込む

以下のコードをコピーしてサイトに埋め込むことができます

プレビュー
アプリのスクリーンショット
いまの話題をアプリでチェック!
  • バナー広告なし
  • ミュート機能あり
  • ダークモード搭載
アプリをダウンロード

関連記事

usersに達しました!

さんが1番目にブックマークした記事「TypeScriptのexhau...」が注目されています。

気持ちをシェアしよう

ツイートする

TypeScriptのexhaustiveness checkをスマートに書く

TypeScriptではデザインパターンとしてtagged unionによる直和がよく使われます。このときパターンマッ... TypeScriptではデザインパターンとしてtagged unionによる直和がよく使われます。このときパターンマッチに相当する処理はswitchで行われますが、そこで直和に対する分岐が網羅的であることの保証を実行時と型検査時の両方で賢く行う方法がこれまでも模索されてきました。 今回、ヘルパー関数を導入せずにいくつかの問題を同時に解決する賢い方法を思い付いたので共有します。 コード これだけです。 // switch (action.type) { ... default: throw new Error(`Unknown type: ${(action as { type: "__invalid__" }).type}`); // .. } 以下、より詳しく説明します。 問題 TypeScriptではオブジェクトに type プロパティーを用意し、決まった文字列を入れることで直和を実現

ブックマークしたユーザー

  • Kesin2025年04月14日 Kesin
  • techtech05212024年05月21日 techtech0521
  • nabetk2024年01月16日 nabetk
  • Haaaa_N2023年02月17日 Haaaa_N
  • rutei2022年08月22日 rutei
  • efcl2022年08月21日 efcl
  • stoikheia2022年08月19日 stoikheia
  • arata04242022年08月16日 arata0424
  • kkeisuke2022年08月15日 kkeisuke
  • threeMonths2022年08月15日 threeMonths
  • razokulover2022年08月15日 razokulover
  • soh3352022年08月15日 soh335
  • gfx2022年08月15日 gfx
  • montdsichel2022年08月15日 montdsichel
  • murabito_RX2022年08月15日 murabito_RX
  • slay-t2022年08月15日 slay-t
  • ant_mugi2022年08月15日 ant_mugi
  • machupicchubeta2022年08月15日 machupicchubeta
すべてのユーザーの
詳細を表示します

ブックマークしたすべてのユーザー

同じサイトの新着

同じサイトの新着をもっと読む

いま人気の記事

いま人気の記事をもっと読む

いま人気の記事 - テクノロジー

いま人気の記事 - テクノロジーをもっと読む

新着記事 - テクノロジー

新着記事 - テクノロジーをもっと読む

同時期にブックマークされた記事

いま人気の記事 - 企業メディア

企業メディアをもっと読む

はてなブックマーク

公式Twitter

はてなのサービス

Copyright © 2005-2025 Hatena. All Rights Reserved.
設定を変更しましたx

AltStyle によって変換されたページ (->オリジナル) /