4.2 Switch Statements
Similar to an if is the switch statement, which allows us to take a different code path based on the value of something. I’ll show you how it works in this lesson.
1.Introduction2 lessons, 07:42
2.Language Fundamentals8 lessons, 1:00:53
3.Data Structures5 lessons, 22:52
4.Controlling Program Execution7 lessons, 37:06
6.Functions8 lessons, 56:07
7.Miscellaneous6 lessons, 52:39
8.Working With the DOM6 lessons, 37:39
9.Web APIs4 lessons, 17:41
11.Conclusion1 lesson, 00:43
4.2 Switch Statements
Hi folks, in this lesson we're going to cover the switch statement which is an alternative to the if statement in that it consists of a series of branches that are executed depending on whether a condition is met. When an if else statement begins to get too large and has many branches, it can be useful to change it to a switch statement instead. A switch statement can perform faster than an equivalent if, and some argue that the construct is more readable. Another differentiator between if and switch is that if is normally used with boolean or truthy and falsey conditions, whereas switch statements can be used with other values like strings. The syntax for a switch statement is fairly straight-forward. Let's look at a simple example. So, first of all, we've declared a variable called switcher which has the string value two. This isn't part of the switch statement, but we will use it in conjunction with the switch statement. So we start out with the reserved word switch, followed by an expression in parentheses. We'll use the switcher variable as the condition to switch on. We can now add cases for what we expect the switching variable, in this case, the variable switcher, to match. The switch block as a whole is surrounded by curly brackets, but the individual case statements within it are not. To define a case block, we use the keyword case, followed by the value that we expect the switch variable to equal. In this case block, we can just log a message to the console. It's very important to end case blocks with the break keyword. We'll come back to that in just a moment. So let's add another case now. And let's just add one more case block. So our switch statement consist of three separate case blocks, let's run it in a browser and see what happens. In these case, we see the message the value was two. Because the variable that we are switching on, the switch variable, contains the string two. So that matches our second case block. So I mentioned that it was important to always use the break keyword. Let's see what happens if we don't. This time we see two log messages, both the second and third. This is why it is very important to always use the break keyword at the end of each case. If we don't, then program execution falls from the case that gets matched into all cases below it. So if we had cases for four, five, six and so on and so forth, all of those would be logged. That's why the break statement is very important. As well as providing cases for particular values of the expression, we can also add a default clause that will be executed if none of the other cases match. And now let's just change our switcher so it doesn't match any of the cases. And let's go back to the browser. We can see that in this case, the default block was executed because none of the other cases match. So this is a bit like the else block at the end of an if block. So, in this lesson, we looked at the switch statements, which works in a similar way to the if else statement that we looked at in the last lesson. The difference is that this construct is able to conditionally execute one or more blocks based on any type of value rather than true or false conditions, like with the if statement. In the next lesson, we can move on to look at loops, starting with the for loop. Thanks for watching.