JS Closure 编译器,用于数组解构的@param 语法?
JS Closure Compiler, @param syntax for array destructuring?
我找不到 @param
数组解构注释的正确语法。例如:
let destructArray = ([one, two]) => one + two;
我尝试模仿对象解构语法:
// object destructuring works
/** @param {{one: number, two: number}} o */
let destructObject = ({one, two}) => one + two;
// array destructuring does not works
/** @param {[one: number, two: number]} a */
let destructArray = ([one, two]) => one + two;
但这不是有效的语法。我也试过 /** @param {Array<number>} a */
,但它需要一个名为 a
的参数,而不是 one
和 two
.
有人知道数组解构的正确语法吗?
Closure Compiler 目前不支持不同数组索引处的不同类型。所以在这种情况下,你要做的就是:
/** @type {function(!Array<number>):number} */
let destructArray = ([one, two]) => one + two;
我找不到 @param
数组解构注释的正确语法。例如:
let destructArray = ([one, two]) => one + two;
我尝试模仿对象解构语法:
// object destructuring works
/** @param {{one: number, two: number}} o */
let destructObject = ({one, two}) => one + two;
// array destructuring does not works
/** @param {[one: number, two: number]} a */
let destructArray = ([one, two]) => one + two;
但这不是有效的语法。我也试过 /** @param {Array<number>} a */
,但它需要一个名为 a
的参数,而不是 one
和 two
.
有人知道数组解构的正确语法吗?
Closure Compiler 目前不支持不同数组索引处的不同类型。所以在这种情况下,你要做的就是:
/** @type {function(!Array<number>):number} */
let destructArray = ([one, two]) => one + two;