Прыклад з параметрам праз рэкурсію ў JavaScript
Давайце, з дапамогай рэкурсіі паслядоўна выведзем элементы масіва. Хай масіў першапачаткова перадаецца параметрам функцыі:
javascriptfunc([1, 2, 3]);
Давайце пакуль без рэкурсіі з выкарыстаннем метаду
shift
выведзем усе элементы масіва па чарзе:
javascriptfunction func(arr) {
console.log(arr.shift()); // выведзе 1
console.log(arr); // выведзе [2, 3] - масіў паменшыўся
console.log(arr.shift()); // выведзе 2
console.log(arr); // выведзе [3] - масіў паменшыўся
console.log(arr.shift()); // выведзе 3
console.log(arr); // выведзе [] - масіў пусты
}
func([1, 2, 3]);
Як вы бачыце, метад shift вырэзвае
і вяртае першы элемент масіва, пры
гэтым сам масіў паменшыўся на гэты элемент.
Давайце цяпер выкарыстаем рэкурсію:
javascriptfunction func(arr) {
console.log(arr.shift(), arr);
if (arr.length != 0) {
func(arr);
}
}
func([1, 2, 3]);
На самой справе, вядома ж, найпрасцей перабраць элементы масіва цыклам. Прыведзеныя прыклады пакуль проста дэманструюць працу рэкурсіі на простых прыкладах (не жыццёвых). Больш карысныя прыклады ўжывання рэкурсіі проста больш складаныя, мы іх разбяром крыху ніжэй.
Задание 1
Дадзены масіў:
javascriptlet arr = [1, 2, 3, 4, 5];
З дапамогай рэкурсіі выведзіце элементы гэтага масіва ў кансоль.