使用 JSDoc 记录数组的数组的最佳方法是什么?
What's the best way to document an array of arrays of arrays using JSDoc?
我有以下数据结构。根数组的元素类型是固定的。使用 JSDoc 记录这种结构的最佳方式是什么?
[
[
['aqua-160', 160, 'PreCleaning'],
['aqua-260', 260, 'PreCleaning']
],
[
['aqua-360', 360, 'PostCleaning']
]
];
我会为此使用 @typedef
:
/** @typedef {[string, number, string]} MyTuple */
您可以按以下方式申请:
/** @type {Array<Array<MyTuple>>} */
const x = [ [ ['aqua-160', 160, 'PreCleaning']
, ['aqua-260', 260, 'PreCleaning']]
, [ ['aqua-360', 360, 'PostCleaning']]];
当您将鼠标悬停在 VS Code 中的 x
变量上时,您会看到以下内容:
使用 VS Code,您还可以在文件顶部使用 // @ts-check
“指令”执行一些 type checking:
// @ts-check
/**
* @typedef {[string, number, string]} MyTuple
*/
/** @param {Array<Array<MyTuple>>} z */
function y(z) {
return 42;
}
y('4');
VS Code 能够看到 z
参数是错误的:
另见
我有以下数据结构。根数组的元素类型是固定的。使用 JSDoc 记录这种结构的最佳方式是什么?
[
[
['aqua-160', 160, 'PreCleaning'],
['aqua-260', 260, 'PreCleaning']
],
[
['aqua-360', 360, 'PostCleaning']
]
];
我会为此使用 @typedef
:
/** @typedef {[string, number, string]} MyTuple */
您可以按以下方式申请:
/** @type {Array<Array<MyTuple>>} */
const x = [ [ ['aqua-160', 160, 'PreCleaning']
, ['aqua-260', 260, 'PreCleaning']]
, [ ['aqua-360', 360, 'PostCleaning']]];
当您将鼠标悬停在 VS Code 中的 x
变量上时,您会看到以下内容:
使用 VS Code,您还可以在文件顶部使用 // @ts-check
“指令”执行一些 type checking:
// @ts-check
/**
* @typedef {[string, number, string]} MyTuple
*/
/** @param {Array<Array<MyTuple>>} z */
function y(z) {
return 42;
}
y('4');
VS Code 能够看到 z
参数是错误的:
另见