= true) {
if (arr.length === 0) {
return []
}
const [first, ...rest] = arr;
const updatedSwitchStatus = isFlick(first) ? !switchStatus : switchStatus;
return [updatedSwitchStatus].concat(flickSwitch(rest, updatedSwitchStatus))
}
чет не очень получилось.
+ проверку (isFlick в данном случае) надо бы передавать аргументом в функцию.
Чет не понял а откуда rest появился + зачем рекурсия?
просто решил попробовать через рекурсию сделать https://developer.mozilla.org/ru/docs/Web/JavaScript/Reference/Functions/Rest_parameters
Только у мапа и у рекурсии алгоритмическая сложность отличается. Сложно !== хорошо + не читаемо
Обсуждают сегодня