в самом низу рекурсии у тебя выполнится условие return []
но [ ] обернет переменную arr в самом конце? как на промежуточных периодах по типу countdown(5) мы будем делать push, допустим? на этапе countdown(5) - arr - просто переменная, не массив же. но допустим, мы записываем каким -то образом при помощи push, допустим и вконце оборачиваем все в [ ], меня малыш R ❤ еще больше запутал своим shift - это же удаление первого элемента, это нам зачем еще?