TypeScript · Senior · Запитання 27 з 75
Що змінилося у виведенні предикатів типу в TS 5.5?
const nums = [1, null, 2].filter(x => x !== null);- ✓Правильна відповідь: TS виводить предикат
x is number, іnums-number[] - 2
filterтепер завжди повертаєnever[]для змішаних масивів - 3Предикати типів видалено на користь функцій-тверджень
Пояснення
Раніше nums був (number | null)[], і доводилося писати (x): x is number => x !== null. Тепер компілятор виводить предикат для простих функцій, якщо повернене true справді звужує тип.