--- title: 'SyntaxError: unterminated string literal' slug: Web/JavaScript/Reference/Erreurs/Unterminated_string_literal tags: - Erreurs - JavaScript - Reference - SyntaxError translation_of: Web/JavaScript/Reference/Errors/Unterminated_string_literal ---
SyntaxError: Unterminated string constant (Edge) SyntaxError: unterminated string literal (Firefox)
{{jsxref("SyntaxError")}}
Une chaîne de caractères ({{jsxref("String")}}) n'est pas bien délimitée quelque part. Les littéraux de chaînes de caractères doivent être délimités par des simples quotes (') ou par des doubles quotes ("). Les séquences d'échappement permet de représenter dans ces chaînes de caractères. Pour réparer cette erreur :
En JavaScript, on ne peut pas écrire une chaîne simple sur plusieurs lignes comme ceci :
var longString = "This is a very long string which needs to wrap across multiple lines because otherwise my code is unreadable."; // SyntaxError: unterminated string literal
Pour écrire une chaîne sur plusieurs lignes, on pourra utiliser :
Voici la première variante avec l'opérateur de concaténation :
var longString = "This is a very long string which needs " + "to wrap across multiple lines because " + "otherwise my code is unreadable.";
Sinon, on peut utiliser une barre oblique inversée à la fin de chaque ligne pour indiquer qu'elle continue sur la ligne suivante. Attention, il faudra qu'il n'y ait aucun espace ou autre caractère après la barre oblique (il peut bien entendu y avoir un saut de ligne) :
var longString = "This is a very long string which needs \ to wrap across multiple lines because \ otherwise my code is unreadable.";
On pourra également utiliser les littéraux de gabarits qui sont pris en charge par les environnement ECMAScript 2015 :
var longString = `This is a very long string which needs to wrap across multiple lines because otherwise my code is unreadable.`;