ციკლი და return JavaScript-ში
დავუშვათ, გვაქვს ფუნქცია, რომელიც აბრუნებს რიცხვების ჯამს
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) );
ახსენით რატომ. რა სურდა ამ კოდის ავტორს გაეკეთებინა? გამასწორეთ ავტორის შეცდომა.