freeCodeCamp/curriculum/challenges/espanol/02-javascript-algorithms-an.../basic-javascript/quoting-strings-with-single...

2.6 KiB

id title challengeType videoUrl forumTopicId dashedName
56533eb9ac21ba0edf2244b4 Cita cadenas con comillas simples 1 https://scrimba.com/c/cbQmnhM 18260 quoting-strings-with-single-quotes

--description--

Los valores de cadena en JavaScript pueden escribirse con comillas simples o dobles, siempre y cuando comiencen y terminen con el mismo tipo de comillas. A diferencia de otros lenguajes de programación, las comillas simples y dobles funcionan igual en JavaScript.

doubleQuoteStr = "This is a string"; 
singleQuoteStr = 'This is also a string';

La razón por la que puedes querer usar un tipo de comilla sobre otro es si quieres usar ambos en una cadena. Esto puede suceder si quieres guardar una conversación en una cadena y tener la conversación entre comillas. Otro uso sería guardar una etiqueta <a> con varios atributos entre comillas, todo dentro de una cadena.

conversation = 'Finn exclaims to Jake, "Algebraic!"';

Sin embargo, esto se convierte en un problema cuando es necesario utilizar las comillas externas dentro de ella. Recuerda, una cadena tiene el mismo tipo de comillas al principio y al final. Pero si tienes esa misma comilla en algún lugar del medio, la cadena se detendrá antes de tiempo y arrojará un error.

goodStr = 'Jake asks Finn, "Hey, let\'s go on an adventure?"'; 
badStr = 'Finn responds, "Let's go!"';

Aquí badStr arrojará un error.

En la cadena goodStr anterior, puedes usar ambas comillas de forma segura usando la barra invertida \ como un carácter de escape.

Nota: La barra invertida \ no debe confundirse con la barra diagonal /. No hacen lo mismo.

--instructions--

Cambia la cadena proporcionada a una cadena con comillas simples al principio y al final y sin caracteres de escape.

Ahora mismo, la etiqueta <a> en la cadena usa comillas dobles en todas partes. Necesitarás cambiar las comillas externas a comillas simples para poder eliminar los caracteres de escape.

--hints--

Debes eliminar todas las barras invertidas (\).

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*'
    )
);

Debes tener dos comillas simples ' y cuatro comillas dobles ".

assert(code.match(/"/g).length === 4 && code.match(/'/g).length === 2);

--seed--

--after-user-code--

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

--seed-contents--

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

--solutions--

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