Ask Your Question

Revision history [back]

click to hide/show revision 1
initial version

Generics in Typescript allow for creating reusable code that can work with multiple data types without the need for redundant code. The Array constructor is an example of how generics can be implemented in Typescript.

For example, consider a scenario where you want to write a function that takes an array of any data type and returns the sum of all the elements in the array. You can use generics to achieve this:

function sum<T extends number | string>(arr: T[]): number | string {
  let result: number | string = 0;
  for (let i = 0; i < arr.length; i++) {
    result += arr[i];
  }
  return result;
}

In the above example, the generic type T extends either number or string. This means that you can pass an array of numbers or strings to the function and it will return the sum of all elements in the array.

You can call this function with different types of arrays, for example:

const arr1: number[] = [1, 2, 3];
const arr2: string[] = ['one', 'two', 'three'];

console.log(sum(arr1)); // returns 6
console.log(sum(arr2)); // returns 'onetwothree'

In summary, implementing generics in Typescript allows for creating flexible and reusable code that can work with multiple data types, including arrays using the Array constructor.