Истифодаи 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 камтар шавад.
Бигзор функсия миқдори
такрорҳоро баргардонад, ки барои расидан ба
натиҷа зарур буд.