@jenya1995

Почему параметр index после выполнения рекурсии начинает движение в обратном порядке?

Здравствуйте, объясните пожалуйста, почему так происходит?
https://codepen.io/Jane111/pen/LYJWKZp
Проблема на 9 строке (codepen)

Прошу не советовать сделать циклом, умею, просто изучаю рекурсию, пытаюсь разобраться.

const arr = ['Аня', 'Игорь', 'Марина', 'Коля']

function printArr(arr, index = 0) {
  console.log(arr[index]);
  index = index + 1
  
  if (index < arr.length) {
    printArr(arr, index)
    console.log(index)
  } 
}

printArr(arr)
  • Вопрос задан
  • 41 просмотр
Пригласить эксперта
Ответы на вопрос 2
Fragster
@Fragster
помогло? отметь решением!
if (index < arr.length) {
console.log(index)
printArr(arr, index)
}
Ответ написан
@AUser0
Чем больше знаю, тем лучше понимаю, как мало знаю.
Так рекурсия же!
printArr(0) -> printArr(1) -> printArr(2) -> printArr(3)
После собственно рекурсии функция и делает вывод текущего index, поэтому 3 -> 2 -> 1.
Ответ написан
Комментировать
Ваш ответ на вопрос

Войдите, чтобы написать ответ

Похожие вопросы