Pular para o conteúdo principal

Tipos de valor

Toda variável, todo argumento e todo resultado contém exatamente um de cinco tipos. Uma variável não tem tipo fixo. Ela contém o que foi atribuído a ela por último.

TipoContémVem deVerdadeiro quandoExibido como (StringFormat)
Booltrue / falseliterais, comparações, !, &&, ||, muitas funções internasé truetrue / false
Integernúmero inteiro de 64 bits com sinalliterais inteiros e hexadecimais, constantes, aritmética de inteirosnão é 042, -7
Realponto flutuante de 64 bitsliterais reais, qualquer aritmética que envolva um Realnão é 0.0sempre seis casas decimais: 0.500000
Textcadeia Unicodeliterais de cadeia, + entre dois Texts, funções internas de Textnão é vaziocomo está
Windowum identificador de janela (HWND)WindowGetActive, ContextGetWindow, WindowFindByTitle, …não é nulo0x00000000000A0B2C

"Verdadeiro" (truthy) é como as condições de if e for, !, && e || leem um valor que não é Bool. Isso faz estas verificações do dia a dia funcionarem sem comparar com nada:

w = WindowFindByTitle("Calculator");
if (!w) UtilityPrint("Calculator isn't open"); // identificador nulo é falso

text = StringTrim(ClipboardGetText());
if (text) UtilityPrint("Clipboard has: " + text); // Text vazio é falso

Não existe valor null, undefined nem "nada". Uma função interna que não encontra nada retorna um Text vazio, 0, -1, false ou um Window nulo, conforme o seu tipo de retorno. Verifique o que ela usa.