2 ругается про тип never?
https://www.typescriptlang.org/play?#code/PTAEn4QQBEEDhBB4QRWEEqAjAKAMYHsB2BnALqAE5EBMAXKABQFECW2A5gD7YCuAtgEYCmRAlAG0AuqAC8oEahKkAdAAc2uABZVk-VJpAQYCJKQw4CxIpVoNGI0M1DtufKxKmbpRBUtXqgA
Потому что в первом примере у вас массив может содержать и то и другое вперемешку, а во втором варианте либо то, либо другое. И он из push не может вывести тип. А поскольку общего между string & number нету ничего - он выводит тип never.
Как это он не может тип вывести? А типо 1 может быть чем-то ещё кроме числа или что?
Обсуждают сегодня