Назад к вопросам
JuniorТеорияЧасто
На какой строке tsc сообщит об ошибке?
function longest<T extends { length: number }>(a: T, b: T): T {
return a.length >= b.length ? a : b;
}
console.log(longest("cat", "horse"));
console.log(longest(10, 200));6
- Ждать ошибку в объявлении: функция написана верно, а tsc сообщает о вызове, аргумент которого нарушает ограничение.
- Ждать, что строки не подойдут, раз они не объекты: ограничение требует только свойства, а
lengthесть у любой строки.
- Почему внутри
longestкомпилируетсяa.length, аa.toUpperCase()— нет? - Что вернёт
longest([1, 2], [3])и какой у результата тип?