3.0 KiB
id | title | challengeType | videoUrl | forumTopicId | dashedName |
---|---|---|---|---|---|
56533eb9ac21ba0edf2244b6 | Sequenze di escape nelle stringhe | 1 | https://scrimba.com/c/cvmqRh6 | 17567 | escape-sequences-in-strings |
--description--
Le virgolette non sono gli unici caratteri dei quali si può fare l'escaping all'interno di una stringa. Ci sono due motivi per usare i caratteri di escaping:
- Per permetterti di utilizzare caratteri che potresti non essere altrimenti in grado di digitare, come ad esempio un ritorno a capo.
- Per permetterti di rappresentare più virgolette in una stringa senza JavaScript interpretare erroneamente ciò che intendi.
Lo abbiamo imparato nella sfida precedente.
Codice | Output |
---|---|
\' | virgoletta singola |
\" | doppia citazione |
\\ | barra rovesciata |
\n | nuova riga |
\r | ritorno a capo |
\t | tabulazione |
\b | delimitatore di parola |
\f | avanzamento carta (form feed) |
Nota che la barra rovesciata necessita di escaping perché appaia come barra rovesciata.
--instructions--
Assegna le seguenti tre linee di testo in una sola variabile myStr
usando le seguenze di escape.
FirstLine
\SecondLine
ThirdLine
Dovrai usare le sequenze di escape per inserire i caratteri speciali. Dovrai seguire anche la spaziatura come sopra, senza spazi tra sequenze di escape o le parole.
Note: L'indentazione per SecondLine
si ottiene con il carattere di escape di tabulazione, non con gli spazi.
--hints--
myStr
non dovrebbe contenere spazi
assert(!/ /.test(myStr));
myStr
dovrebbe contenere le stringhe FirstLine
, SecondLine
e ThirdLine
(ricorda la distinzione tra maiuscole e minuscole)
assert(
/FirstLine/.test(myStr) && /SecondLine/.test(myStr) && /ThirdLine/.test(myStr)
);
FirstLine
dovrebbe essere seguito dal carattere newline \n
assert(/FirstLine\n/.test(myStr));
myStr
dovrebbe contenere un carattere di tabulazione \t
che segue un carattere nuova riga
assert(/\n\t/.test(myStr));
SecondLine
dovrebbe essere preceduto dal carattere backslash \
assert(/\\SecondLine/.test(myStr));
Ci dovrebbe essere un carattere nuova riga tra SecondLine
e ThirdLine
assert(/SecondLine\nThirdLine/.test(myStr));
myStr
dovrebbe contenere solo i caratteri mostrati nelle istruzioni
assert(myStr === 'FirstLine\n\t\\SecondLine\nThirdLine');
--seed--
--after-user-code--
(function(){
if (myStr !== undefined){
console.log('myStr:\n' + myStr);}})();
--seed-contents--
var myStr; // Change this line
--solutions--
var myStr = "FirstLine\n\t\\SecondLine\nThirdLine";