if

Evaluates a condition to determine if it is true and if so executes a subsequent statement or statementlist.

If the conditional expression is false and the if control structure contains an else keyword the statement or statementlist following the else keyword is executed.

The if control structure may contain one or more else if keywords which have a condition. If the condition for one of these evaluates to be true then the statment or statementlist following that else if keyword is executed.

If the if control structure contains more than one line then the if control structure must end with an end if keyword.

# Metadata

Platforms: desktop, server, mobile OS: mac, windows, linux, ios, android Introduced: 1.0 Security:

# Syntax

if condition then statementList [else elseStatementList] end if

# Params

- condition : Any <expression>. (If the <condition> <evaluate|evaluates> to true, the <statement|statements> execute for that <condition>. If the <condition> <evaluate|evaluates> to false, the <statement> or <statementlist|statement list> following that <condition> is skipped.) - statementList : Of one or more <LiveCode> <statement|statements>, and can also include <if>, <switch>, <try>, or <repeat> <control structure|control structures>. - elseIfStatementList : Of one or more <LiveCode> <statement|statements>, and can also include <if>, <switch>, <try>, or <repeat> <control structure|control structures>. - elseStatementList : Of one or more <LiveCode> <statement|statements>, and can also include <if>, <switch>, <try>, or <repeat> <control structure|control structures>.

# Examples

if tSpeed &lt; 2 then answer "That is slow" else if tSpeed &lt; 5 then answer "That is pretty fast" else if tSpeed &lt; 10 then answer "That is a rocket" else answer "You are traveling at the speed of light" end if

# Description

Use the if control structure to execute a statement (or statementlist) only under certain circumstances.

The if control structure always begins with the word if. There are four forms of the if control structure:

if condition then statementList [else elseStatementList]

This form may have a line break before the words `then` or `else` or both.

if condition then statementList [else elseStatementList] end if

-- OR if condition then statement [else elseStatementList] end if

-- OR if condition then statementList else elseStatement end if

If the condition evaluates to true, the statement or statementList is execute; if the condition evaluates to false, the statement or statementList is skipped.

if the condition evaluates to false and the if control structure contains an else keyword, the elseStatement or elseStatementList which follows it is execute.

If the if control structure contains one or more else if keywords which have a condition, and one of those condition evaluates to be true, then the respective elseIfstatement or elseIfstatementlist following that else if keyword is executed.

If one if control structure is nested inside another, use of the second form described above is recommended, since the other forms may cause ambiguities in interpreting which else clause belongs with which if statement.

The if control structure is most suitable when you want to check a single condition. If you need to check for multiple possibilities, doing something different for each one, use a switch control structure instead.

>*Note:* The if control structure is implemented internally as a > command and appears in the commandNames.

# Tags

# See

- **keyword:** then, else, else if, end if, word - **function:** commandNames - **glossary:** statement, command, evaluate, execute, control structure - **control structure:** repeat, switch, try