--- id: 56533eb9ac21ba0edf2244b6 title: Escapa secuencias en cadenas challengeType: 1 videoUrl: 'https://scrimba.com/c/cvmqRh6' forumTopicId: 17567 dashedName: escape-sequences-in-strings --- # --description-- Las comillas no son los únicos caracteres que pueden ser escapados dentro de una cadena. Hay dos razones para usar caracteres de escape: 1. Para permitir el uso de caracteres que de otra manera no te sería posible escribir, como un retorno de carro. 2. Para permitirte representar múltiples comillas en una cadena sin que JavaScript malinterprete lo que quieres decir. Esto lo aprendimos en el desafío anterior.
Código | Resultado |
---|---|
\' | comilla simple |
\" | comilla doble |
\\ | barra invertida |
\n | línea nueva |
\r | retorno de carro |
\t | tabulación |
\b | límite de palabra |
\f | fuente de formulario |
FirstLineNecesitarás usar secuencias de escape para insertar correctamente los caracteres especiales. También necesitarás seguir el espaciado tal y como se ve arriba, sin espacios entre secuencias de escape o palabras. **Nota:** La sangría para la segunda línea (`SecondLine`) se consigue con el carácter de escape de tabulación, no con espacios. # --hints-- `myStr` no debe contener ningún espacio ```js assert(!/ /.test(myStr)); ``` `myStr` debe contener las cadenas `FirstLine`, `SecondLine` y `ThirdLine` (recuerda la sensibilidad a mayúsculas y minúsculas) ```js assert( /FirstLine/.test(myStr) && /SecondLine/.test(myStr) && /ThirdLine/.test(myStr) ); ``` `FirstLine` debe ir seguido del carácter de línea nueva `\n` ```js assert(/FirstLine\n/.test(myStr)); ``` `myStr` debe contener un carácter de tabulación `\t` seguido de un carácter de línea nueva ```js assert(/\n\t/.test(myStr)); ``` `SecondLine` debe estar precedida por el carácter de barra invertida `\` ```js assert(/\\SecondLine/.test(myStr)); ``` Debe haber un carácter de línea nueva entre `SecondLine` y `ThirdLine` ```js assert(/SecondLine\nThirdLine/.test(myStr)); ``` `myStr` solo debe contener caracteres mostrados en las instrucciones ```js assert(myStr === 'FirstLine\n\t\\SecondLine\nThirdLine'); ``` # --seed-- ## --after-user-code-- ```js (function(){ if (myStr !== undefined){ console.log('myStr:\n' + myStr);}})(); ``` ## --seed-contents-- ```js const myStr = ""; // Change this line ``` # --solutions-- ```js const myStr = "FirstLine\n\t\\SecondLine\nThirdLine"; ```
\SecondLine
ThirdLine