Что такое String.raw() в JavaScript?

Видео этой статьи доступно ниже:

Введение

В этой статье я расскажу о необработанных строках в JavaScript.

Иногда, когда мы работаем с шаблонными литералами, мы используем их для преобразования символов. Давайте поясним это на примере.

console.log(`MondaynTuesdaynWednesday`);
//Returns --->
Monday
Tuesday
Wednesday
Войти в полноэкранный режим Выйти из полноэкранного режима

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

String.raw()

JavaScript предоставляет нам функцию тега String.raw(), которая позволяет нам получить доступ к необработанной строке из шаблонного литерала. Это означает, что мы можем получить доступ к строке, где управляющие символы не обрабатываются. Давайте расширим приведенный выше пример с помощью этого.

String.raw`MondaynTuesdaynWednesday`;
//Returns ---> 'MondaynTuesdaynWednesday'
Вход в полноэкранный режим Выход из полноэкранного режима

В приведенном выше примере мы используем метод String.raw() и передаем в качестве параметра шаблонный литерал. Мы получаем ту же самую строку без обработанных символов новой строки.

Интерполяция

При использовании метода raw все, что интерполируется в строку, будет обработано. Давайте рассмотрим пример этого.


console.log(`Sum: ${4+5}`);
//Returns ---> Sum: 9
Вход в полноэкранный режим Выход из полноэкранного режима

В приведенном выше примере внутри консольного журнала мы используем интерполяцию строки для суммирования 4 и 5. Мы получаем строку с возвращенной суммой. Теперь давайте попробуем сделать это с помощью метода raw.

String.raw`Sum: ${4+5}`;
//Returns ---> 'Sum: 9'
Вход в полноэкранный режим Выход из полноэкранного режима

В приведенном выше примере мы используем метод raw и передаем в шаблон литерал с интерполированной суммой. Мы получаем в ответ строку с полной суммой, потому что все, что мы передаем для интерполяции, обрабатывается методом.

Юникод

Еще один случай, когда метод raw string может быть полезен, — это использование символов Юникода.

console.log(`u2605`);
//Returns ---> ★
Войти в полноэкранный режим Выход из полноэкранного режима

В приведенном выше примере мы используем символ Unicode для доступа к символу звезды, и он нам возвращается. Теперь давайте используем метод raw на этом шаблонном литерале.

String.raw`u2605`;
//Returns ---> '\u2605'
Войти в полноэкранный режим Выход из полноэкранного режима

Мы продолжаем использовать метод raw, передавая символ Unicode. Ничего не обрабатывается, и мы получаем необработанную строку.

Надеюсь, вам понравилась эта статья. Пожалуйста, оставляйте комментарии, вопросы и отзывы, а также следите за мной, чтобы получать новые материалы!

Оцените статью
devanswers.ru
Добавить комментарий