我可以为rest参数传入一个数组吗?

时间:2017-05-10 16:12:18

标签: typescript ecmascript-6

我有一个接受rest参数的函数。

function getByIds(...ids: string){
...
}

我知道我可以调用getByIds('andrew')getByIds('andrew','jackson'),它会将字符串转换为字符串数组。

我的问题是:如果已将参数合并到数组中,我可以调用getByIds(['andrew','jackson'])吗?

在Java中我知道我可以,但打字稿似乎给我带来了问题。 JsFiddle也让我失望。

1 个答案:

答案 0 :(得分:11)

是的,您可以使用点差运算符:

getByIds(...['andrew', 'jackson']);

汇编为:

getByIds.apply(void 0, ['andrew', 'jackson']);