Esta página foi traduzida do inglês pela comunidade.Saiba mais e junte-se à comunidade MDN Web Docs.
SyntaxError: unterminated string literal
Mensagem
SyntaxError: unterminated string literal
In this article
Tipo de Erro
SyntaxErrorO que deu errado?
Há umaString não finalizada em algum lugar do código. String literais devem se fechadas com aspas simples (') ou duplas (") . O JavaScript não faz distinção entre strings com aspas simples ou aspas duplas.As sequências de escape trabalham com strings criadas tanto com aspas simples, quanto com aspas duplas. Para consertar este erro, verifique se:
- você abriu e fechou sua string literal com aspas (simples ou duplas),
- você escapou sua string literal corretamente,
- sua string funciona corretamente em várias linhas, se houver.
Exemplos
>Múltiplas linhas
Você não pode dividir sua string em múltiplas linhas em #"This is a very long string which needs to wrap across multiple lines because otherwise my code is unreadable.";// SyntaxError: unterminated string literal
Ao invés disso, você deve utilizar o operador+ operator, uma barra invertida(\), oumodelos literais. Uma forma de uso do operador+, seria assim:
var longString = "This is a very long string which needs " + "to wrap across multiple lines because " + "otherwise my code is unreadable.";Ou você pode usar uma barra invertida ("\") ao final de cada linha para indicar que a string continuará na próxima linha. Certifique-se de que não há espaço ou qualquer outro caractere após a barra invertida (excento quando for uma quebra de linha), ou como indentação; caso contrário, não funcionará. Esta forma ficaria assim:
var longString = "This is a very long string which needs \to wrap across multiple lines because \otherwise my code is unreadable.";Uma outra possibilidade é usar ummodelo literal, que é suportado pelos ambientes ECMAScript 2015:
var longString = `This is a very long string which needs to wrap across multiple lines because otherwise my code is unreadable.`;