有没有办法通过 javascript 中的 JSDoc 语法声明类型参数,以便打字稿理解

is there a way to declare a type parameter via JSDoc syntax in javascript for typescript to understand

此文档:

没有提到类型参数

问题:

是的,您可以在 JavaScript 中使用 JSDoc 指定类型,供 TypeScript 编译器使用...

/** @type {Window} */
var myWin;

/** @type {Event} */
var myEvent;

/**
 * @param myStr {string} my parameter
 * @return {string} returns a string
 */
function myFunction(myStr){
    return myStr;
}

在 TypeScript 2.3 及更高版本中可用。

使用通用类型参数:

/**
 * @template T
 * @param {T} thing
 * @return {T}
 */
function getThing(thing){
    return thing;
}