Using CFScript statements

The following sections describe how to use these CFScript statements:

Using assignment statements and functions

CFScript assignment statements are the equivalent of the cfset tag. These statements have the following form:

lval = expression;

lval is any ColdFusion variable reference; for example:

x = "positive";
y = x; 
a[3]=5; 
structure.member=10;
ArrayCopy=myArray;

You can use ColdFusion function calls, including UDFs, directly in CFScript. For example, the following line is a valid CFScript statement:

StructInsert(employee,"lastname",FORM.lastname);

Using conditional processing statements

CFScript includes the following conditional processing statements:

Using if and else statements

The if and else statements have the following syntax:

if(expr) statement [else statement]

In its simplest form, an if statement looks like this:

if(value EQ 2700)
   message = "You've reached the maximum";

A simple if-else statement looks like the following:

if(score GT 1)
   result = "positive";
else
   result = "negative";

CFScript does not include an elseif statement. However, you can use an if statement immediately after an else statement to create the equivalent of a cfelseif tag, as the following example shows:

if(score GT 1)
   result = "positive";
else if(score EQ 0)
   result = "zero";
else
   result = "negative";

As with all conditional processing statements, you can use curly braces to enclose multiple statements for each condition, as follows:

if(score GT 1) {
   result = "positive";
   message = "The result was positive.";
   }
else {
   result = "negative";
   message = "The result was negative.";
   }

Note: Often, you can make your code clearer by using braces even where they are not required.

Using switch and case statements

The switch statement and its dependent case and default statements have the following syntax:

switch (expression) {
case constant: [case constant:]... statement(s) break;
[case constant: [case constant:]... statement(s) break;]...
[default: statement(s)] }

Use the following rules and recommendations for switch statements:

The following switch statement takes the value of a name variable:

  1. If the name is John or Robert, it sets both the male variable and the found variable to True.
  2. If the name is Mary, it sets the male variable to False and the found variable to True.
  3. Otherwise, it sets the found variable to False.
switch(name) {
   case "John": case "Robert":
      male=True;
      found=True;
      break;
   case "Mary":
      male=False;
      found=True;
      break;
   default:
      found=False;
} //end switch

View comments in LiveDocs