How to use the spread operator with function arguments with TypeScript?

Sometimes, we want to use the spread operator with function arguments with TypeScript.

In this article, we’ll look at how to use the spread operator with function arguments with TypeScript.

How to use the spread operator with function arguments with TypeScript?

To use the spread operator with function arguments with TypeScript, we can use function overloading to make a function accept different kinds of arguments without compiler errors.

For instance, we write

function foo(...args: number[]): void;
function foo(x: number, y: number, z: number) {
  console.log(x, y, z);
}

const args: number[] = [0, 1, 2];
foo(...args);

to define the foo function to takes an unlimited number of number arguments or 3 number arguments.

Then we can define the args number array and spread that into the foo function as arguments without compiler errors.

Conclusion

To use the spread operator with function arguments with TypeScript, we can use function overloading to make a function accept different kinds of arguments without compiler errors.