如何从元组强制转换函数参数?

时间:2019-02-05 08:12:25

标签: typescript

如果我有一个tuple,如何将其设置为输入参数的函数?

type addArgs = [number, number]

const add = (a, b): number => {
  return a + b;
}

我尝试了类似的方法,但是它不起作用:

type addArgs = [number, number]

const add = (...[a, b]: addArgs): number => {
  return a + b;
}

1 个答案:

答案 0 :(得分:1)

您只需要使用tuples in rest parameters

type addArgs = [number, number]

const add = (...args: addArgs): number => {
  const [a, b] = args;
  return a + b;
}
add(1, 2);

不幸的是,我们不能在剩余参数中使用解构,因此我们需要在函数主体中进行解构,并且在调用时我们会使用宽松的参数名称,但这是可以做到的最好的方法