Texto-fonte
Comentários e espaços em branco
//inicia um comentário que vai até o fim da linha./* ... */é um comentário de bloco que pode ocupar várias linhas. Comentários de bloco não se aninham. Um/*não fechado engole o restante do script, e você recebe um erro de compilação no fim.- Espaços, tabulações e quebras de linha separam os tokens e, fora isso, são ignorados. Uma instrução pode ocupar quantas linhas você quiser.
- Marcadores de comentário dentro de um literal de cadeia são apenas texto.
Instruções e ponto e vírgula
Uma atribuição ou uma instrução de expressão termina com ;. Um bloco { ... }, um if ou um for
não precisa dele depois da chave de fechamento. Um ; solto é uma instrução vazia e não causa
problema, então ;; é válido.
Identificadores
O nome de uma variável ou de uma função interna começa com uma letra ou _, seguido de letras,
dígitos ou _ (somente ASCII). Os nomes diferenciam maiúsculas de minúsculas: count e Count
são variáveis diferentes, e windowmaximize(w) é uma função desconhecida.
Palavras-chave
Cinco palavras são reservadas: if, else, for, true e false. Nenhuma outra é palavra-chave.
while, return, break, function e outras são identificadores comuns, então while (x) { } é
lido como uma chamada a uma função desconhecida chamada while.
Nomes com ponto
Namespace.Name sem espaços em volta do ponto se refere a uma constante nomeada,
como VirtualKey.Enter ou FileNotify.LastWrite. Não é acesso a membro. Não há objetos, e um ponto
em qualquer outro lugar é um erro.