我无法为数组解构的@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
。
有人知道用于数组解构的正确语法吗?
答案 0 :(得分:1)
Closure Compiler当前在不同的数组索引处不支持不同的类型。因此,在这种情况下,您要做的就是:
/** @type {function(!Array<number>):number} */
let destructArray = ([one, two]) => one + two;