JavaScript'те цикл жана return
Бизде 1ден 5ке чейинки сандардын суммасын кайтара турган функция болсун:
function func() {
let sum = 0;
for (let i = 1; i <= 5; i++) {
sum += i;
}
return sum;
}
let res = func();
console.log(res); // 15 чыгарат
Эми return ти циклдин ичине коёлу, мындай:
function func() {
let sum = 0;
for (let i = 1; i <= 5; i++) {
sum += i;
return sum;
}
}
let res = func();
console.log(res);
Бул учурда цикл бир эле итерация аткарылат жана функциядан (жана ошону менен бирге циклдан) автоматтык түрдө чыгуу болот. Ал эми циклдин бир итерациясында sum өзгөрмөсүндө бардык керектүү сумма эмес, бир эле 1 саны калат.
Төмөнкү код аткарылганда консольго эмне чыгат:
function func(num) {
let sum = 0;
for (let i = 1; i <= num; i++) {
sum += i;
return sum;
}
}
console.log( func(5) );
Эмне үчүн ошондой экенин түшүндүрүңүз. Бул коддун автору эмне кылгысы келген? Автордун катасын оңдоп бериңиз.