This page was translated from English by the community.Learn more and join the MDN Web Docs community.
String.raw()
Baseline Widely available
This feature is well established and works across many devices and browser versions. It’s been available across browsers since сентябрь 2015 г..
Сводка
Статический методString.raw() является теговой функцией дляшаблонных строк; подобно префиксуr в Python или префиксу@ в C# для строковых литералов, эта функция используется для получения необработанной строки из шаблона.
In this article
Синтаксис
String.raw(callSite, ...substitutions)String.raw`templateString`
Параметры
callSiteПравильно сформированный объект вызова, например
{ raw: 'string' }....substitutionsЗначения подстановок.
templateStringШаблонная строка, возможно с подстановками (
${...}).
Выбрасываемые исключения
Описание
В большинстве случаев методString.raw() используется вместе с шаблонными строками. Первый синтаксис, показанный выше, используется редко, поскольку движок JavaScript будет вызывать метод с соответствующими аргументами, подобно другимтеговым функциям.
МетодString.raw() является единственной встроенной теговой функцией шаблонных строк, выступающей стандартной функцией по объединению их фрагментов. Вы и сами могли бы реализовать подобную функциональность на JavaScript.
Примеры
>Пример: использование методаString.raw()
String.raw`Привет\n${2 + 3}!`;// 'Привет\n5!', символ после 'Привет' не является символом новой строки,// '\' и 'n' - это два символа.String.raw`Привет\u000A!`;// 'Привет\u000A!', а здесь мы получим символы// \, u, 0, 0, 0, A, всего 6 символов.// Экранирующие символы не имеют особого значения и// обратные слеши будут присутствовать в выходной строке.// Вы можете убедиться в этом, проверив свойство .length строки.let name = "Боб";String.raw`Привет\n${name}!`;// 'Привет\nБоб!', сработала подстановка.// Обычно вам не нужно вызывать метод String.raw() как функцию,// но никто не запрещает вам делать это:String.raw({ raw: "тест" }, 0, 1, 2);// 'т0е1с2т'Спецификации
| Specification |
|---|
| ECMAScript® 2026 Language Specification> # sec-string.raw> |