Zenn
🐕

【JavaScript】JSDocで@ts-checkを使うときの@templateにデフォルト型を指定する【TypeScript】

2025/03/30に公開

なぜかTypeScript公式のJSDocリファレンスに書かれておらず、「jsdoc ts-check template default」で検索しても出てこなかったので、一応メモを残しておく。

@templateのデフォルト型を指定するには@template [TypeArgName=DefaultType]と書く。

例えば以下のTypeScriptコード相当のts-checkを書くには

type Identity<T = number> = T
const foo: Identity = 10

以下のように書く。

/**
 * @template [T=number]
 * @typedef {T} Identity
 */

/** @type {Identity} */ // Identityの型引数を指定していないので、Identity<number>として扱われる
const foo = 10 // 通る(`Identity = Identity<number> = number`のため)

Discussion

ログインするとコメントできます