web-dev-qa-db-fra.com

Types lors de la déstructuration de tableaux

function f([a,b,c]) {
  // this works but a,b and c are any
}

il est possible d'écrire quelque chose comme ça?

function f([a: number,b: number,c: number]) {
  // being a, b and c typed as number 
}
53
thr0w

Voici la syntaxe appropriée pour déstructurer un tableau dans une liste d'arguments:

function f([a,b,c]: [number, number, number]) {

}
54
Ryan Cavanaugh

Oui, ça l'est. Dans TypeScript, vous le faites avec des types de tableau de manière simple, en créant des tuples.

type StringKeyValuePair = [string, string];

Vous pouvez faire ce que vous voulez en nommant le tableau:

function f(xs: [number, number, number]) {}

Mais vous ne nommeriez pas le paramètre interne. Une autre possibilité est d'utiliser la déstructuration par paires:

function f([a,b,c]: [number, number, number]) {}
10
Marcelo Camargo