4.2 KiB
Raw Blame History

id, title, challengeType, videoUrl, forumTopicId, localeTitle
id title challengeType videoUrl forumTopicId localeTitle
56533eb9ac21ba0edf2244b4 Quoting Strings with Single Quotes 1 https://scrimba.com/c/cbQmnhM 18260 Цитирование строк с одиночными котировками

Description

Значения строк в JavaScript могут быть записаны с одинарными или двойными кавычками, если вы начинаете и заканчиваете одним и тем же типом цитаты. В отличие от некоторых других языков программирования одиночные и двойные кавычки работают одинаково в JavaScript.
doubleQuoteStr = "Это строка";
singleQuoteStr = 'Это также строка';
Причина, по которой вы, возможно, захотите использовать один тип цитаты над другим, - это если вы хотите использовать оба в строке. Это может произойти, если вы хотите сохранить разговор в строке и провести разговор в кавычках. Другим использованием для него было бы сохранение тега <a> с различными атрибутами в кавычках, все внутри строки.
разговор = 'Финн восклицает Джейку: «Алгебраический!»;
Однако это становится проблемой, если вам нужно использовать внешние цитаты внутри нее. Помните, что строка имеет такую ​​же цитату в начале и в конце. Но если у вас есть такая же цитата где-то посередине, строка остановится раньше и выкинет ошибку.
goodStr = 'Джейк спрашивает Финна: ​​«Эй, давай отправимся в приключение?»;
badStr = 'Финн отвечает: «Поехали!»; // Выдает ошибку
В goodStr выше вы можете безопасно использовать обе кавычки, используя обратную косую черту \ в качестве escape-символа. Заметка
Обратную косую черту \ не следует путать с косой чертой / . Они не делают то же самое.

Instructions

Измените предоставленную строку на строку с одинарными кавычками в начале и конце и без escape-символов. Прямо сейчас тег <a> в строке использует двойные кавычки всюду. Вам нужно будет изменить внешние кавычки на одинарные кавычки, чтобы вы могли удалить escape-символы.

Tests

tests:
  - text: Remove all the <code>backslashes</code> (<code>\</code>)
    testString: assert(!/\\/g.test(code) && myStr.match('\\s*<a href\\s*=\\s*"http://www.example.com"\\s*target\\s*=\\s*"_blank">\\s*Link\\s*</a>\\s*'));
  - text: You should have two single quotes <code>&#39;</code> and four double quotes <code>&quot;</code>
    testString: assert(code.match(/"/g).length === 4 && code.match(/'/g).length === 2);

Challenge Seed

var myStr = "<a href=\"http://www.example.com\" target=\"_blank\">Link</a>";

After Tests

(function() { return "myStr = " + myStr; })();

Solution

var myStr = '<a href="http://www.example.com" target="_blank">Link</a>';