* fix: remove isHidden flag from frontmatter * fix: add isUpcomingChange Co-authored-by: Ahmad Abdolsaheb <ahmad.abdolsaheb@gmail.com> * feat: hide blocks not challenges Co-authored-by: Ahmad Abdolsaheb <ahmad.abdolsaheb@gmail.com> Co-authored-by: Ahmad Abdolsaheb <ahmad.abdolsaheb@gmail.com>
2.8 KiB
id, title, challengeType, videoUrl, forumTopicId
id | title | challengeType | videoUrl | forumTopicId |
---|---|---|---|---|
56533eb9ac21ba0edf2244b4 | Quoting Strings with Single Quotes | 1 | https://scrimba.com/c/cbQmnhM | 18260 |
Description
doubleQuoteStr = "This is a string";
singleQuoteStr = 'This is also a string';
The reason why you might want to use one type of quote over the other is if you want to use both in a string. This might happen if you want to save a conversation in a string and have the conversation in quotes. Another use for it would be saving an <a>
tag with various attributes in quotes, all within a string.
conversation = 'Finn exclaims to Jake, "Algebraic!"';
However, this becomes a problem if you need to use the outermost quotes within it. Remember, a string has the same kind of quote at the beginning and end. But if you have that same quote somewhere in the middle, the string will stop early and throw an error.
goodStr = 'Jake asks Finn, "Hey, let\'s go on an adventure?"';
badStr = 'Finn responds, "Let's go!"'; // Throws an error
In the goodStr above, you can use both quotes safely by using the backslash </code> as an escape character.
Note
The backslash </code> should not be confused with the forward slash
/
. They do not do the same thing.
Instructions
Change the provided string to a string with single quotes at the beginning and end and no escape characters.
Right now, the <a>
tag in the string uses double quotes everywhere. You will need to change the outer quotes to single quotes so you can remove the escape characters.
Tests
tests:
- text: You should 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>'</code> and four double quotes <code>"</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 Test
(function() { return "myStr = " + myStr; })();
Solution
var myStr = '<a href="http://www.example.com" target="_blank">Link</a>';