★ wanayoo — archive 1999 https://developer.mozilla.org/ru/docs/Web/JavaScript/Reference/Global_Objects/String/rawNouvelle recherche | Portail wanayoo

Check out Firefox Developer Edition, the first browser built for developers like you. http://mzl.la/112VrtT

mozilla
Your Search Results

    String.raw()

    Это экспериментальная технология, часть предложения Harmony (ECMAScript 6).
    Поскольку спецификация этой технологии ещё не стабилизировалась, проверьте таблицу совместимости её использования в различных браузерах. Также обратите внимание, что синтаксис и поведение экспериментальной технологии могут быть изменены в будущих версиях браузеров в соответствии с изменениями в спецификации.

    Сводка

    Статический метод String.raw() является теговой функцией для шаблонных строк; подобно префиксу r в Python или префиксу @ в C# для строковых литералов, эта функция используется для получения необработанной строки из шаблона.

    Синтаксис

    
    String.raw(callSite, ...substitutions)
    
    String.raw`templateString`
    

    Параметры

    callSite
    Правильно сформированный объект вызова, например { raw: 'string' }.
    ...substitutions
    Значения подстановок.
    templateString
    Шаблонная строка, возможно с подстановками (${...}).

    Выбрасываемые исключения

    TypeError
    Если первый аргумент не является правильно сформированным объектом вызова, выбрасывается исключение TypeError.

    Описание

    В большинстве случаев метод 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т'
    

    Спецификации

    Спецификация Статус Комментарии
    ECMAScript 6 (ECMA-262)
    Определение 'String.raw' в этой спецификации.
    Черновик Изначальное определение.

    Совместимость с браузерами

    Возможность Chrome Firefox (Gecko) Internet Explorer Opera Safari
    Базовая поддержка Не поддерживается 34 (34) Не поддерживается Не поддерживается Не поддерживается
    Возможность Android Chrome для Android Firefox Mobile (Gecko) IE Mobile Opera Mobile Safari Mobile
    Базовая поддержка Не поддерживается Не поддерживается 34.0 (34) Не поддерживается Не поддерживается Не поддерживается

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

    Метки документа и участники

    На данную страницу внесли свой вклад: Mingun, dtretyakov
    Обновлялась последний раз: Mingun,
    Скрыть боковую панель