Como atribuir uma string multilinha a uma variável em JavaScript: análise para iniciantes
\n\nVocê já escreveu um texto longo no código e pensou: "Não é possível simplesmente pressionar Enter e continuar na próxima linha?" Se você é iniciante em JavaScript, provavelmente já passou por isso. Você tenta salvar um texto multilinha em uma variável e recebe um erro de sintaxe. Familiar?
\n\nA pergunta "How can I assign a multiline string literal to a variable?" é uma das mais populares no Stack Overflow. Milhares de desenvolvedores procuram a resposta. E não é surpresa: trabalhar com strings multilinha é o básico que todo mundo que programa em JavaScript precisa dominar.
\n\nNeste artigo, não vamos apenas dar uma resposta seca. Vamos analisar três maneiras funcionais, mostrar exemplos da vida real e sugerir qual método escolher para que seu código seja limpo, legível e não cause dores de cabeça.
\n\nPor que o JavaScript não gosta de quebras de linha entre aspas?
\n\nVamos direto ao problema principal. Se você tentar escrever assim:
\n\nlet message = "Olá!\nComo vai?\nTudo bem?";\nconsole.log(message);\n\n… você receberá um erro SyntaxError: unterminated string literal. Por quê? Porque em strings comuns (entre aspas duplas ou simples), o JavaScript considera que a string termina na mesma linha em que começou. A quebra de linha fisicamente interrompe a string.
\n\nMas não se preocupe. Temos pelo menos três maneiras de contornar essa limitação. E a primeira delas é a mais moderna e conveniente.
\n\nManeira 1: Template Literals — seu novo melhor amigo
\n\nA partir do ES6 (ECMAScript 2015), o JavaScript introduziu os template literals. São strings delimitadas por acentos graves (` `). E eles resolvem o problema de multilinha de uma vez por todas.
\n\nVeja como é simples:
\n\nlet multilineString = `Esta é a primeira linha.\nEsta é a segunda linha.\nE esta é a terceira linha.`;\n\nconsole.log(multilineString);\n// Saída:\n// Esta é a primeira linha.\n// Esta é a segunda linha.\n// E esta é a terceira linha.\n\nFunciona perfeitamente. Você simplesmente escreve o texto com quebras de linha, e o JavaScript as mantém como estão. Sem caracteres extras, sem mágica.
\n\nPor que esta é a melhor opção para iniciantes?
\n- \n
- Legibilidade: O código se parece com o que você imaginou. \n
- Suporte a interpolação: Você pode inserir variáveis diretamente na string usando
${...}. \n - Padrão: Todos os navegadores modernos e Node.js suportam template literals. \n
Exemplo com interpolação:
\n\nlet name = "Ana";\nlet greeting = `Olá, ${name}!\nBem-vindo ao PythonLib.\nHoje é um ótimo dia para aprender código.`;\n\nconsole.log(greeting);\n// Saída:\n// Olá, Ana!\n// Bem-vindo ao PythonLib.\n// Hoje é um ótimo dia para aprender código.\n\nEsta maneira é tão conveniente que, no desenvolvimento moderno, é usada em 90% dos casos. Se você está começando, lembre-se desta.
\n\nManeira 2: Concatenação de strings (método antigo, mas confiável)
\n\nAntes dos template literals, os desenvolvedores usavam concatenação — juntar strings com o operador +. Este método ainda é relevante, especialmente se você trabalha com código muito antigo ou não pode usar ES6 por algum motivo.
Como fica:
\n\nlet multilineString = "Esta é a primeira linha.\\n" +\n "Esta é a segunda linha.\\n" +\n "E esta é a terceira linha.";\n\nconsole.log(multilineString);\n// Saída:\n// Esta é a primeira linha.\n// Esta é a segunda linha.\n// E esta é a terceira linha.\n\nObserve o \\n — é uma sequência de escape
Blogs
Book Recommendations
Leia também
Como obter o ano atual em PHP? 5 maneiras simples
usize vs u32 em Rust: qual a diferença e o que escolher
PHP no LeetCode: como resolver problemas e turbinar suas habilidades
Filas de tarefas em TypeScript: criação e otimização do processamento
Injeção de Dependência em PHP: um guia simples para iniciantes