In this tutorial, we will explore the concept of control flow in JavaScript. Control flow is a fundamental concept in any programming language, including JavaScript. It refers to the order in which the individual statements, instructions, or function calls of an imperative or a declarative program are executed or evaluated.
By the end of this tutorial, you will understand the different types of control flow statements in JavaScript, including conditional statements (like if, else, and switch) and loop statements (like for, while, and do-while). You will also learn how to use these statements to control the flow of your program.
Prerequisites: Before starting this tutorial, it is recommended that you have a basic understanding of JavaScript syntax.
JavaScript supports several types of control flow statements:
if
: An if statement will only run the code inside the statement if a certain condition is true.else
: An else statement can be paired with an if statement, and will run if the condition in the if statement is false.else if
: This can be used to chain multiple conditions.switch
: A switch statement can be used to replace multiple if checks. It gives a more descriptive way to compare the expression with multiple variants.
Loop Statements: These allow us to run a piece of code multiple times.
for
: A for loop repeats until a specified condition evaluates false.while
: A while loop executes its statements as long as a specified condition evaluates to true.do-while
: The do-while loop is similar to the while loop, but the loop will always be executed at least once, even if the condition is false, because the code block is run before the condition is tested.{}
even for single statement code blocks in your if/else and loop statements. This makes your code more readable and maintainable.Let's look at some code examples.
if/else
Statementlet age = 16;
if (age >= 18) {
console.log('You are an adult.');
} else {
console.log('You are a minor.');
}
In this example, the if
statement checks if the age is greater than or equal to 18. If it is, the message 'You are an adult.' is printed to the console. If not, the else
statement runs, and 'You are a minor.' is printed.
for
Loopfor(let i = 0; i < 5; i++) {
console.log(i);
}
In this example, the for
loop starts with i
equal to 0, continues as long as i
is less than 5, and increments i
by 1 after each loop iteration. Thus, it will print the numbers 0 through 4 to the console.
In this tutorial, we've covered the basics of control flow in JavaScript, including conditional statements and loop statements. We've also looked at some best practices and tips for using these statements effectively.
Next, you might want to delve deeper into JavaScript and explore more complex control flow scenarios, such as nested loops and conditions, as well as error handling with try/catch/finally statements.
Additional Resources:
1. Mozilla Developer Network - JavaScript Guide
2. W3Schools - JavaScript Tutorial
Exercise 1: Write a JavaScript program that prints the numbers from 1 to 100. But for multiples of three print "Fizz" instead of the number and for the multiples of five print "Buzz". For numbers which are multiples of both three and five print "FizzBuzz".
Solution:
for(let i = 1; i <= 100; i++) {
if (i % 3 === 0 && i % 5 === 0) {
console.log('FizzBuzz');
} else if (i % 3 === 0) {
console.log('Fizz');
} else if (i % 5 === 0) {
console.log('Buzz');
} else {
console.log(i);
}
}
In this solution, the for
loop goes through the numbers 1 to 100. For each number, it checks if it's divisible by 3 and 5, 3 only, or 5 only, printing 'FizzBuzz', 'Fizz', or 'Buzz' respectively. If none of these conditions are met, it just prints the number.
Exercise 2: Write a JavaScript program to construct the following pattern, using a nested for loop.
*
* *
* * *
* * * *
* * * * *
Solution:
let pattern = '';
for(let i = 1; i <= 5; i++) {
for(let j = 1; j <= i; j++) {
pattern += '* ';
}
pattern += '\n';
}
console.log(pattern);
In this solution, the outer for
loop runs 5 times, and for each iteration, the inner for
loop runs i
times, adding a '*' to the pattern for each iteration. A newline character \n
is added after each outer loop iteration to create the new lines in the pattern.
Remember, practice is key when learning programming. Keep practicing and experimenting with different problems to strengthen your understanding of control flow in JavaScript.