การใช้ return ในลูปใน JavaScript

การที่ return อยู่ในลูป ไม่ใช่สิ่งผิดเสมอไป ในตัวอย่างต่อไปนี้ มีการสร้างฟังก์ชันที่กำหนดว่า ต้องรวมองค์ประกอบแรกของอาร์เรย์กี่ตัว ผลรวมจึงจะมากกว่าหรือเท่ากับ 10:

javascriptfunction 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:

javascriptfunction func() {
  let sum = 0;
  let i = 1;
  
  while (true) { // ลูปไม่สิ้นสุด
    sum += i;
    
    if (sum >= 100) {
      return i; // ลูปจะทำงานจนกว่าจะออกที่นี่
    }
    
    i++;
  }
}

console.log( func() );
Задание 1

เขียนฟังก์ชันที่รับพารามิเตอร์เป็น ตัวเลขและหารมันด้วย 2 หลายครั้ง จนผลลัพธ์น้อยกว่า 10 โดยให้ฟังก์ชันส่งคืนจำนวน รอบที่ใช้เพื่อให้ได้ผลลัพธ์