TypeScript

type MyObj<T> = { : Record<P, MyObj<T>> | undefined}type Hoge = MyObj<{hoge: string}>const a: Ho ...

TypeScript

非同期処理を実行する関数を配列で渡して、その関数を順番に実行する。reject された場合はfalse、すべて resolve だった場合は true を返す。resolve 時に返される値は void とする

const pi ...

TypeScript

type MyEvent<T> = { target: T type: string}function triggerEvent<T>(event: MyEvent<T>){//...}triggerEv ...

TypeScript

以下のようなコードはコンパイルエラーになります。

const promise = new Promise(resolve => resolve(45))promise.then(result => result * ...

JavaScript, TypeScript

オーバーロード以外で、完全な型シグネチャを使用するケースです。

以下のように関数にプロパティがある時に、その関数のシグネチャとプロパティ(wasCalled)を完全な型シグネチャで表現します。

WarnUser ...

TypeScript

オーバーロードされた関数のシグネチャを宣言した後に、実装ではそれらのシグネチャを結合する。

type Reservation = { code: string dest?: string}//Reserve には、出発日、到着日 ...

TypeScript

number 型の複数の引数をとる関数は以下のように … を使って定義します。

const myFunc = (...number: number

TypeScript

strictNullChecks が true だと以下のようなコードはコンパイルエラーになります。

const users = const firstActiveUser = users.find(u => u.acti ...

TypeScript

nodemon + ts-node を使うことで、tsファイルが変更されると自動で再実行することできます。

これに関して結構記事もあるのですが、nodemon.jsonを作ってその中にexecを指定する方法が紹介されている ...

TypeScript

TypeScript の enum の落とし穴その2です。

こちらはそんなに知られていないのと、あまりこの機能を利用されることはないと思うので重要度は低めです。

enum では逆引きができます。

enum ...