Este guia mostra como formatar e estilizar mensagens no console do Chrome DevTools. Consulte Começar a registrar mensagens para saber como registrar mensagens no console.
Neste guia, pressupomos que você entende os princípios básicos do desenvolvimento da Web, como usar o JavaScript para adicionar interatividade a uma página.
Formatar mensagens do console
É possível usar os especificadores de formato para formatar as mensagens do console.
Os especificadores de formato começam com um caractere de porcentagem (%) e terminam com um "caractere de tipo" que indica o tipo de dados (inteiro, ponto flutuante etc.).
Por exemplo,
- Abra o console
Digite o seguinte comando de console.
const tools = 'Chrome DevTools'; console.warn('%s is awesome.', tools);O comando acima produz a mensagem
Chrome DevTools is awesome..
Confira a lista de especificadores de formato com suporte atual do Chrome DevTools.
| Especificador | Saída |
|---|---|
%s |
Formata o valor como uma string |
%i ou %d |
Formata o valor como um número inteiro |
%f |
Formata o valor como um valor de ponto flutuante |
%o |
Formata o valor como um elemento DOM expansível |
%O |
Formata o valor como um objeto JavaScript expansível |
%c |
Aplica regras de estilo CSS à string de saída, conforme especificado pelo segundo parâmetro |
Aplicar vários especificadores de formato
É possível usar mais de um especificador de formato em uma mensagem.
Digite o seguinte comando de console.
console.info('The total weight of %i %s and %d %s is %f grams.', 3, 'apples', 2, 'oranges', 432.4);O comando acima produz a mensagem
The total weight of 3 apples and 2 oranges is 432.4 grams..
Entender as conversões de tipos
A mensagem de saída será convertida de acordo com o especificador de formato.
Digite o seguinte comando de console.
console.log('I have %i apples and %d oranges.', 2, 3.5);O comando acima produz a mensagem
I have 2 apples and 3 oranges..
Em vez de registrar
3.5 oranges, a saída é3 oranges. O%dindica que o valor precisa/será convertido em um número inteiro.
Confira um exemplo do que acontece se a conversão de tipo for inválida.
Digite o seguinte comando de console.
console.log('Jane has %i kiwis.', 'two');O comando acima produz a mensagem
Jane has NaN kiwis..
O
%iindica que o valor precisa/será convertido em um número inteiro, mas o argumento é uma string. Assim, ele retorna NaN (Not-A-Number).
Estilo de mensagens do console
Há duas maneiras de estilizar mensagens do console nas Ferramentas do desenvolvedor.
Estilo com especificador de formato
É possível usar o especificador de formato %c para estilizar as mensagens do console com CSS.
Digite o seguinte comando de console.
const style = 'background-color: darkblue; color: white; font-style: italic; border: 5px solid hotpink; font-size: 2em;' console.log("%cHooray", style);O comando acima produz
Hooraycom estilos CSS aplicados.
Estilo com sequências de escape ANSI
É possível usar as sequências de escape ANSI para estilizar mensagens do console.
É comum que os desenvolvedores do Node.js colorifiquem mensagens de registro usando sequências de escape ANSI, geralmente com a ajuda de algumas bibliotecas de estilo, como chalk, colors, ansi-colors e kleur.
No entanto, é possível estilizar a mensagem com sequências de escape ANSI sem usar nenhuma biblioteca. Confira a sintaxe:
\x1B[𝘗1;…;𝘗nm
Em que,
𝘗1a𝘗nsão subseqências válidas dos parâmetros SGR (Select Graphic Rendition).- Qualquer um dos parâmetros
𝘗1a𝘗npode ser omitido. Nesse caso, o valor é considerado zero. \x1B[mé a abreviação de\x1B[0m, em que o atributo de exibição será redefinido.
Por exemplo,
Digite o seguinte comando de console.
console.log('\x1B[41;93;4mHello\x1B[m');O comando acima produz uma mensagem
Hellocom fundo vermelho, texto amarelo e sublinhado.
Confira uma lista de códigos de cores aceitos no DevTools.
| Primeiro plano | Contexto | Tema claro | Tema escuro |
|---|---|---|---|
| 30 | 40 | #00000 |
#00000 |
| 31 | 41 | #AA0000 |
#ed4e4c |
| 32 | 42 | #00AA00 |
#01c800 |
| 33 | 43 | #AA5500 |
#d2c057 |
| 34 | 44 | #0000AA |
#2774f0 |
| 35 | 45 | #AA00AA |
#a142f4 |
| 36 | 46 | #00AAAA |
#12b5cb |
| 37 | 47 | #AAAAAA |
#cfd0d0 |
| 90 | 100 | #555555 |
#898989 |
| 91 | 101 | #FF5555 |
#f28b82 |
| 92 | 102 | #55FF55 |
#01c801 |
| 93 | 103 | #FFFF55 |
#ddfb55 |
| 94 | 104 | #5555FF |
#669df6 |
| 95 | 105 | #FF55FF |
#d670d6 |
| 96 | 106 | #55FFFF |
#84f0ff |
| 97 | 107 | #FFFFFF |
#FFFFFF |
Confira uma lista de códigos de estilo com suporte no DevTools.
| Parâmetro(s) | Significado |
|---|---|
| 0 | Redefinir todos os atributos de exibição |
| 1 | font-weight: bold |
| 2 | font-weight: lighter |
| 3 | font-style: italic |
| 4 | Adicionar underline à propriedade text-decoration |
| 9 | Adicionar line-through à propriedade text-decoration |
| 22 | Redefinir a propriedade font-weight |
| 23 | Redefinir a propriedade font-style |
| 24 | Remover underline da propriedade text-decoration |
| 29 | Remover line-through da propriedade text-decoration |
| 38;2;𝑅;𝐺;𝐵 | color: rgb(𝑅,𝐺,𝐵) |
| 39 | Redefinir color property |
| 48;2;𝑅;𝐺;𝐵 | background: rgb(𝑅,𝐺,𝐵) |
| 49 | Redefinir background property |
| 53 | Adicionar overline à propriedade text-decoration |
| 55 | Remover overline da propriedade text-decoration |
Confira outro exemplo mais complexo com vários estilos.
Digite o seguinte comando de console.
const hello = '\x1B[41;93;4mHello'; const space = '\x1B[m '; const world = '\x1B[34;102;9mWorld'; console.log(hello + space + world);O comando acima produz uma mensagem
Hello Worldcom três estilos diferentes.