📖 Scenario: Imagine you have a list of numbers and you want to find the first number that is bigger than a certain limit. This is like looking for the first ripe apple in a basket.
🎯 Goal: You will write a function that looks through a list of numbers and returns the first number that is greater than a given limit. You will learn how return works inside a loop to stop the search as soon as the answer is found.
📋 What You'll Learn
Create an array called numbers with the exact values: [3, 7, 10, 2, 8]
Create a variable called limit and set it to 6
Write a function called findFirstGreater that takes numbers and limit as parameters and uses a for loop with variable num to check each number
Inside the loop, use return to immediately return the first number greater than limit
If no number is greater, return null
Call findFirstGreater(numbers, limit) and print the result
💡 Why This Matters
🌍 Real World
Finding the first item that meets a condition quickly is common in searching tasks, like finding the first available seat or the first product in stock.
💼 Career
Understanding how to use return inside loops helps in writing efficient code that stops processing as soon as the needed result is found, which is important in many programming jobs.
Progress0 / 4 steps
1
Create the array of numbers
Create an array called numbers with these exact values: [3, 7, 10, 2, 8]
Javascript
Hint
Use const numbers = [3, 7, 10, 2, 8]; to create the array.
2
Set the limit value
Create a variable called limit and set it to 6
Javascript
Hint
Use const limit = 6; to create the limit variable.
3
Write the function with a loop and return inside
Write a function called findFirstGreater that takes numbers and limit as parameters. Use a for loop with variable num to check each number. Inside the loop, use return to immediately return the first number greater than limit. If no number is greater, return null after the loop.
Javascript
Hint
Use for (const num of numbers) to loop. Use if (num > limit) return num; inside the loop. Return null after the loop.
4
Call the function and print the result
Call findFirstGreater(numbers, limit) and print the result using console.log
Javascript
Hint
Use console.log(findFirstGreater(numbers, limit)); to print the result.
Practice
(1/5)
1. What happens when you use return inside a loop in a JavaScript function?
easy
A. The function stops immediately and returns the specified value.
B. Only the current loop iteration stops, but the function continues.
C. The loop skips the current iteration and continues with the next one.
D. The loop runs to completion before the function returns.
Solution
Step 1: Understand the role of return in functions
The return statement immediately exits the entire function and sends back a value.
Step 2: Analyze return inside a loop
When return is inside a loop, it does not just stop the loop but stops the whole function immediately.
Final Answer:
The function stops immediately and returns the specified value. -> Option A
Quick Check:
Return exits function, not just loop [OK]
Hint: Return inside loop exits whole function immediately [OK]
Common Mistakes:
Thinking return only stops the loop
Confusing return with continue or break
Assuming function runs after return
2. Which of the following is the correct syntax to return a value inside a for loop in a JavaScript function?
easy
A. for(let i=0; i<5 i++) return i;
B. return for(let i=0; i<5; i++) { i; }
C. for(let i=0; i<5; i++) { return i; }
D. for(let i=0; i<5; i++) { i return; }
Solution
Step 1: Check valid return placement
Return must be inside the loop block with correct syntax: return value;.
Step 2: Analyze each option
for(let i=0; i<5 i++) return i; has a syntax error (missing semicolon after i<5). for(let i=0; i<5; i++) { return i; } correctly places return i; inside the loop block. return for(let i=0; i<5; i++) { i; } and for(let i=0; i<5; i++) { i return; } have invalid syntax.
Final Answer:
for(let i=0; i<5; i++) { return i; } -> Option C
Quick Check:
Return inside braces is correct syntax [OK]
Hint: Return must be inside loop braces with value [OK]
Common Mistakes:
Placing return before for loop
Missing semicolon after return
Incorrect order of return and loop
3. What is the output of this code?
function findFirstEven(arr) {
for (let num of arr) {
if (num % 2 === 0) {
return num;
}
}
return null;
}
console.log(findFirstEven([1, 3, 5, 6, 8]));
medium
A. 6
B. 3
C. null
D. 1
Solution
Step 1: Loop through array elements
The function checks each number in the array: 1, 3, 5, 6, 8.
Step 2: Return first even number found
Numbers 1, 3, 5 are odd, so loop continues. At 6, condition num % 2 === 0 is true, so function returns 6 immediately.
Final Answer:
6 -> Option A
Quick Check:
First even number returned is 6 [OK]
Hint: Return stops at first even number found [OK]
Common Mistakes:
Returning first number instead of first even
Ignoring return stops function
Assuming loop checks all elements
4. Find the error in this function that tries to return the first negative number from an array:
function firstNegative(arr) {
for (let i = 0; i < arr.length; i++) {
if (arr[i] < 0) {
break arr[i];
}
}
return null;
}
medium
A. The loop condition should be i <= arr.length.
B. The loop should use return instead of break.
C. The function should return arr[i] after the loop.
D. Using break with a value is invalid syntax.
Solution
Step 1: Understand break statement usage
In JavaScript, break cannot have a value; it only exits the loop.
Step 2: Identify correct way to return value
To return a value and stop the function, use return arr[i]; inside the loop.
Final Answer:
Using break with a value is invalid syntax. -> Option D
Quick Check:
Break cannot return a value [OK]
Hint: Use return, not break, to exit function with value [OK]
Common Mistakes:
Using break with a value
Returning after loop instead of inside
Incorrect loop boundary conditions
5. You want to write a function that returns the first string longer than 5 characters from an array. Which code correctly uses return inside a loop to do this?
hard
A. function findLong(arr) {
for (const str of arr) {
if (str.length > 5) {
break str;
}
}
return null;
}
B. function findLong(arr) {
for (const str of arr) {
if (str.length > 5) {
return str;
}
}
return null;
}
C. function findLong(arr) {
for (const str of arr) {
if (str.length > 5) {
continue str;
}
}
return null;
}
D. function findLong(arr) {
for (const str of arr) {
if (str.length > 5) {
return;
}
}
return null;
}
Solution
Step 1: Check correct use of return inside loop
function findLong(arr) {
for (const str of arr) {
if (str.length > 5) {
return str;
}
}
return null;
} returns the string immediately when condition is met, stopping the function.
Step 2: Analyze other options for errors
function findLong(arr) {
for (const str of arr) {
if (str.length > 5) {
break str;
}
}
return null;
} uses invalid break with value. function findLong(arr) {
for (const str of arr) {
if (str.length > 5) {
continue str;
}
}
return null;
} uses invalid continue with value. function findLong(arr) {
for (const str of arr) {
if (str.length > 5) {
return;
}
}
return null;
} returns undefined instead of the string.
Final Answer:
function findLong(arr) {
for (const str of arr) {
if (str.length > 5) {
return str;
}
}
return null;
} -> Option B
Quick Check:
Return with value inside loop stops function correctly [OK]
Hint: Return the value inside loop to stop function early [OK]
Common Mistakes:
Using break or continue with values
Returning without value
Returning after loop instead of inside
Recommended
Ready to prove it?
Pass the test and this pattern moves unknownstrongwhile earning +1 Grip toward your certificate.