Skip to main content

TupleArray with fixed length & fixed element Type

Tuple Type used to distinguish from Array Literal which TSC infers as List

Tuple useful for reping ordered sequence of elements ie CSV files

Variadic Tuple

Tuple Type Annotation using Spread Operator or Rest Parameter, to define varying number of element types

let xy: [number, number] = [1, 2];

otherwise TSC infers Type as number[]

const entries: [string, number][] = Object.entries({ x: 1, y: 2})

Object.entries() returns an array of tuples: [["a", 1], ["b", 2]]

const drink_obj = {color: "brown", carbonated: true, sugar: 40}
const drink_tup = [brown, true, 40]

Convert the following array into a tuple:

const pepsi = ["brown", true, 40]

via type annotation: const pepsi: [string, boolean, number] = ["brown", true, 40]; via type alias: type Drink = [string, boolean, number]; const pepsi: Drink = ["brown", true, 40];

References

  1. Variadic TupleTuple Type Annotation using Spread Operator or Rest Parameter, to define varying number of element types