--- 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 ---
{{jsSidebar("Errors")}}

Message

SyntaxError: Unterminated string constant (Edge)
SyntaxError: unterminated string literal (Firefox)

Type d'erreur

{{jsxref("SyntaxError")}}

Quel est le problème ?

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 :

Exemples

Gérer plusieurs lignes

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.`;

Voir aussi