if (표현식)

표현식이 TRUE로 평가되면 수행할 명령어(들)을 지정합니다.

if (expression)
선택

논평

표현식이 있는 if-서술문은 전통적인-if와 다릅니다. If FoundColor <> Blue와 같은 경우 단어 "if" 다음 문자가 여는 활괄호가 아닙니다. 보통 전체 표현식을 활괄호 안에 싸 넣으면 이렇게 할 수 있지만, if (x > 0) and (y > 0)와 같이 해도 달성할 수 있습니다. 게다가, 단어 "if" 다음의 첫 항목이 함수 호출이거나 또는 "not"이나 "!"와 같은 연산자일 경우 여는-활괄호는 완전히 생략해도 됩니다.

if-서술문의 표현식이 참으로 평가되면 (빈 문자열 또는 숫자 0만 아니면 어떤 결과도 참이므로), 그 줄 또는 그 밑의 블록이 실행됩니다. 그렇지 않고, 상응하는 ELSE가 있다면, 실행은 그 줄 또는 그 밑의 블록으로 점프합니다.

IF 또는 ELSE가 여러 줄을 소유하면, 그런 줄들은 반드시 활괄호 안에 둘러싸야 합니다. 그렇지만, 한 줄만 IF나 ELSE에 속한다면, 활괄호는 없어도 됩니다. 이 페이지 아래의 예제들을 참조하십시오.

One True Brace (OTB) 스타일은 선택적으로 표현식 if-서술문과 함께 사용할 수 있습니다 (그러나 전통적인 if-서술문은 안 됩니다). 예를 들어:

if (x < y) {
    ...
}
if WinExist("Untitled - Notepad") {
    WinActivate
}
if IsDone {
    ...
} else {
    ...
}
선택 | 내려받기

"else" 서술문과 다르게 -- 그의 오른쪽에 오기만 하면 서술문에 종류에 상관없이 지원하는 -- if-서술문은 오직 그의 오른쪽에 오는 "{"만 지원합니다.

관련하여, 명령어 if var [not] between LowerBound and UpperBound 는 변수가 두 변수 사이에 있는지 점검합니다. 그리고 if var [not] in value1,value2는 변수의 내용이 값 목록 안에 존재하는지 점검하는 데 사용할 수 있습니다.

관련 항목

표현식, 할당 표현식 (:=), if var in/contains MatchList, if var between, IfInString, 블록, Else, While-회돌이

예제

if (A_Index > 100 or Done)
    return

if (A_TickCount - StartTime > 2*MaxTime + 100)
{
    MsgBox 너무 많은 시간지 경과하였습니다.
    ExitApp
}

if (Color = "Blue" or Color = "White")
{
    MsgBox 컬러는 허용된 값 중 하나입니다.
    ExitApp
}
else if (Color = "Silver")
{
    MsgBox 회색은 허용하지 않는 색입니다.
    return
}
else
{
    MsgBox 이 색은 인지할 수 없습니다.
    ExitApp
}
선택 | 내려받기