Если бы меня спросили реализовать reduce я бы сам ушел не дожидаясь интервью))) Спрашивать, как работает луп или где используется функция Герона вы рискуете не понять реальные способности кандидата. Хотя сейчас программистом может быть кто угодно. Я бы спрашивал какую книгу по профессии он прочитал последний раз, и какие задачи он решил. А самый адекватный (на мой взгляд) способ, дать небольшую домашнюю работу. Во первых это приятно, а во вторых по тому что вы увидите - вам предстоит работать вместе.
Andrey Bondarev
ts one love
const arr1 = [1, 2, null, 3] const arr2 = arr1.filter((item) => item !== null)
Вставил это в typescript playground - тип у arr2 вывелся как number[] - поэтому функция с тайпгардом isNonNullable как бы overkill Мне кажется вам надо в условии добавить [1, 2, null, undefined, 0, NaN, 3] и код const arr2 = arr1.filter((item) => !!item); и тогда ваша функция isNonNullable станет очень даже нужной.