Advanced Conditional StatementsS2C Home « Advanced Conditional Statements
This lesson is about using the switch....case....default
construct to give us a more elegant approach to multiple condition testing of an expression than repeated
else...if
statements. These were described in JavaScript Intermediate Tutorials - Lesson 3 - Conditional Statements.
We also examine the Conditional
special operator and how we use it.
The switch....case....default
Construct
The switch
statement is where we put the expression we are going to evaluate. Each case
statement is evaluated against the switch
expression and the statements within the case
are processed on a match. We have the option to break
from the switch
after this if required. We can also code an optional
default
statement, which can act as a kind of catch all and is normally placed, at the end, after the case
statements.
Let's look at an example of this trio of statements to get a feel for the mechanics.
// A switch where a case matches.
var aVariable == 'blue';
switch (aVariable) {
case 'red':
alert('colour is red');
break;
case 'blue':
alert('colour is blue');
break;
case 'yellow':
alert('colour is yellow');
break;
default:
alert('Default as no case matches');
}
// A switch where no case matches.
var aVariable == 'gold';
switch (aVariable) {
case 'red':
alert('colour is red');
break;
case 'blue':
alert('colour is blue');
break;
case 'yellow':
alert('colour is yellow');
break;
default:
alert('Default as no case matches');
}
The Conditional
Special Operator
The Conditional
special operator takes three operands and is often used as a shortcut replacement for the
if....else
construct. The operator consists of a condition and two expressions. The value of the first expression
is returned if the condition evaluates to true
. The value of the second expression is returned if the condition evaluates to false
.
Following is an example of the Conditional
special operator.
// The conditional operator.
var aBoolean = 'true';
alert((aBoolean == 'true' ? 'Evalutes to true' : 'Evalutes to false'));
alert((aBoolean == 'false' ? 'Evalutes to true' : 'Evalutes to false'));
Lesson 1 Complete
In this lesson we looked at the switch....case....default
construct and the Conditional
special operator.
Related Tutorials
JavaScripts 1.5 Intermediate Tutorials - Lesson 3 - Conditional Statements
What's Next?
In the next lesson we look at errors and how we can channel our code to deal with them.
JavaScript Reference
switch....case....default
constructor
Conditional
special operator