--- title: 'SyntaxError: unterminated string literal(незавершённый строковый литерал)' slug: Web/JavaScript/Reference/Errors/Unterminated_string_literal translation_of: Web/JavaScript/Reference/Errors/Unterminated_string_literal ---
{{jsSidebar("Errors")}}

Сообщение

SyntaxError: незадействованная строковая константа (Edge)
SyntaxError: незадействованный строковый литерал (Firefox)

Тип ошибки

{{jsxref("SyntaxError")}}

Что пошло не так?

Где-то есть unterminated {{jsxref("String")}}. Строковые литералы должны быть заключены в одинарные (') или двойные (") кавычки. JavaScript не делает различий между строками в одинарных и двойных кавычках. Escape-последовательности работают в строках, созданных с одинарными или двойными кавычками. Чтобы исправить эту ошибку, проверьте:

Примеры

Несколько строк

Вы не можете разделить строку на несколько строк, как в JavaScript:

var longString = 'Это очень длинная строка, которая нуждается
                  перенос через несколько строк, потому что
                  в противном случае мой код нечитаем.";
// SyntaxError: незавершённый строковый литерал

Вместо этого используйте оператор+, обратную косую черту или литералы шаблона. Вариант оператора + выглядит следующим образом:

var longString = ' Это очень длинная строка, которая нуждается в ' +
                 'чтобы обернуть через несколько строк, потому что' +
                 -иначе мой код будет нечитабелен.";

Или можно использовать символ обратной косой черты ("\") в конце каждой строки, чтобы указать, что строка будет продолжаться в следующей строке. Убедитесь, что после обратной косой черты нет пробелов или других символов (кроме разрыва строки) или отступа; в противном случае это не сработает. Эта форма выглядит следующим образом:

var longString = 'Это очень длинная строка, которая нуждается \
                переносе через несколько строк, потому что \
                  в противном случае мой код нечитаем.";

Ещё одна возможность-использовать шаблонные литералы, поддерживаемые в средах ECMAScript 2015:

var longString = `Это очень длинная строка, которая нуждается
                  в переносе через несколько строк, потому что
                  в противном случае мой код нечитаем.`;

Смотрите также