はてブログ

はてなブックマーク新着エントリーの過去ログサイトです。



タグ 型定義

新着順 人気順 5 users 10 users 50 users 100 users 500 users 1000 users
 
(1 - 4 / 4件)
 

空でない配列を型で表現する正しい方法【TypeScript】

2023/08/01 このエントリーをはてなブックマークに追加 118 users Instapaper Pocket Tweet Facebook Share Evernote Clip TypeScript 配列 結論 上記 正しい方法

TypeScriptでは配列が空でないことを型レベルで表現できます。 この記事ではその型をNonEmptyArray<T>と書くことにします。 結論だけ先に書くと、次のように定義するのが正しいです。 export type NonEmptyArray<T> = [T, ...T[]] | [...T[], T] 現在ネット上では上記とは異なる、少し不具合のある型定義が紹介されてい... 続きを読む

TypeScriptの型定義で麻雀の役判定をする 【dwango Advent Calendar 2日目】 - MANA-DOT

2021/12/03 このエントリーをはてなブックマークに追加 119 users Instapaper Pocket Tweet Facebook Share Evernote Clip TypeScript MANA-DOT クッソ エントリ 麻雀

このエントリは ドワンゴ Advent Calendar 2021 2日目の記事です(夜が明けるまでは2日目!)。 はじめに TypeScriptには Conditional Types や Template Literal Types といったクッソ強力な型機能があります。 これらを用いて、今回は 2p3p4p2m3m4m2s3s4s4s5s6s8s8s のような天鳳牌譜形式の文字列を型引数に渡すと、麻雀... 続きを読む

アンサー: なぜTypeScriptの型定義に凝るのか - Qiita

2021/02/09 このエントリーをはてなブックマークに追加 140 users Instapaper Pocket Tweet Facebook Share Evernote Clip Qiita TypeScript アンサー

インターフェースに注目すると、引数のひとつがTで返り値がT[]です。これは、repeat関数は「T型の値をT[]型の値に変換する関数」であるという意味ですね。返り値に書かれているT[]というのは、非常に簡単ながら「Tという型からその配列の型T[]を作る」というロジックが書かれていると読めます。 この程度ではロジックと... 続きを読む

TypeScriptの型を手に馴染ませるためにやっていること - $shibayu36->blog;

2020/10/15 このエントリーをはてなブックマークに追加 341 users Instapaper Pocket Tweet Facebook Share Evernote Clip TypeScript TypeSc $shibayu36

最近TypeScriptが好きで勉強していっている。しかしなかなか型定義周りが手に馴染まず、少し複雑な型定義を読んだり、自分でユーティリティ型を定義したりすることが難しかった。 そこで型を手に馴染ませるために色々学習をしてみたので、やっていることをメモしておく。 まずざっとTypeScriptの型概要を学ぶ まずTypeSc... 続きを読む

 
(1 - 4 / 4件)