Instruction: Provide an overview of generics in TypeScript and why they are useful.
Context: This question assesses the candidate's understanding of generics and their ability to explain how generics provide a way to create reusable and generalized code components.
Official answer available
Preview the opening of the answer, then unlock the full walkthrough.
To give you a bit more context, let's consider the scenario of creating a function that returns the first item of an array. Without generics, this function might be limited to handling an array of any specific type, say number. However, with Generics, I can write this function in a way that it can accept an array of any type — be it numbers, strings, or even objects. Here's a quick example to illustrate this:
function getFirstItem<T>(items: T[]): T | undefined { return items[0]; }...