我想学一点 TypeScript 和 JsDoc。对我来说,常见的情况是我碰巧混合了不太相同的数值。作为一个简单的例子(也许不太现实),让我们说我可以混合毫秒和秒。在下面的代码中,我尝试从 JsDoc 获得一些帮助。我在 Visual Studio Code 中编辑此内容并希望看到一些警告/错误,但没有显示任何内容。
// @ts-check
/** @typedef {number} TSseconds */
/** @typedef {number} TSmilliSeconds */
/** @type {TSmilliSeconds} */
let ms = 1;
/** @type {TSseconds} */
let sec = 2;
ms = sec;
/**
*
* @param {TSseconds} secVal
* @returns {TSmilliSeconds}
*/
function sec2ms(secVal) {
console.log("sec2ms", secVal);
return 1000 * secVal;
}
/** @type {TSmilliSeconds} */
let ms2;
ms2 = sec2ms(ms);
/** @type {TSseconds} */
let sec2;
sec2 = sec2ms(ms);
我想我误会了什么。我如何从 JsDoc 获得更多帮助? (完成工程。)
我安装了打字稿(
npm install -g typescript
)。
NodeJs 最新稳定版本。
我认为使用 Typescript 能够实现的最好效果就是为
number
类型起别名,以更好地描述参数应该是什么。例如。
type Seconds = number
type MilliSeconds = number
function myTimer(arg0:Seconds, arg1:MilliSeconds){}
因此,当您查看函数定义时,会更清楚地了解这些值所代表的含义。