Ужыванне return у цыклах у JavaScript
Тое, што return
размешчаны ўнутры цыклу,
не заўсёды можа быць памылкай. У наступным
прыкладзе зроблена функцыя, якая вызначае,
колькі першых элементаў масіву трэба скласці,
каб сума стала большая або роўная 10
:
function func(arr) {
let sum = 0;
for (let i = 0; i < arr.length; i++) {
sum += arr[i];
// Калі сума большая або роўная 10:
if (sum >= 10) {
return i + 1; // выходзім з цыклу і з функцыі
}
}
}
let res = func([1, 2, 3, 4, 5]);
console.log(res);
А ў наступным прыкладзе зроблена функцыя, якая
вылічвае, колькі цэлых лікаў, пачынаючы з
1
, трэба скласці, каб вынік
быў большы за 100
:
function func() {
let sum = 0;
let i = 1;
while (true) { // бясконцы цыкл
sum += i;
if (sum >= 100) {
return i; // цыкл круціцца пакуль не выйдзе тут
}
i++;
}
}
console.log( func() );
Напішыце функцыю, якая параметрам будзе
прымаць лік і дзяліць яго на 2
столькі разоў, пакуль вынік не стане менш
10
. Хай функцыя вяртае колькасць
ітэрацый, якая спатрэбілася для дасягнення
выніку.