Curso de JavaScript | 8. Strings y JavaScript

Iniciado por Abarhild, Julio 19, 2022, 07:10:26 PM

Tema anterior - Siguiente tema

0 Miembros y 1 Visitante están viendo este tema.

Julio 19, 2022, 07:10:26 PM Ultima modificación: Julio 20, 2022, 04:47:34 PM por Abarhild
Strings y JavaScript
En JavaScript, los datos de texto se almacenan en un string. A diferencia de otros lenguajes de programación, no hay tipos de datos adicionales en JavaScript como para caracteres de 1 dígito.

UTF-16 es el formato interno de JavaScript para almacenar cadenas. Importante: no está vinculado a la codificación de la página (encoding). Por lo tanto, no importa si un sitio web especifica "ISO-8859-1" o "UTF-8" en el encabezado. JavaScript siempre usa UTF-16.


Estructura básica de las cadenas
Las cadenas se asignan a una variable. Esto se puede hacer usando el conocido var o usando let. Las comillas van después del signo igual:

Código: javascript
var x = "Curso de JavaScript";
var y = 'Curso de JavaScript';
var z = `Curso de JavaScript`;


Ahora usamos 3 comillas diferentes en el ejemplo anterior, y la buena noticia es que las 3 funcionan bien. Pero ¿cuál es la diferencia?

Las comillas simples y dobles tienen el mismo uso. No debe haber compaginaciones en la siguiente línea, de lo contrario, JavaScript arrojará mensajes de error.

Las comillas invertidas (en inglés "backticks") son la forma más moderna de comillas. Con los "backsticks" tenemos la ventaja de que también se puede producir una ruptura entre las comillas invertidas sin que JavaScript se queje con un error.

Código: javascript
var z = `Curso de JavaScript
para
aprender JavaScript`;


Pero, ¿cómo podríamos incluir una ruptura en el tipo tradicional de comillas? Y la segunda pregunta: ¿cómo se puede empaquetar una comilla, que se imprima, en una cadena como contenido?

Es posible "enmascarar" caracteres especiales, como las distintas comillas. Así se llama esta técnica. Simplemente se escribe una barra invertida antes del "carácter problemático" y todo está bien. Entonces, si se desea guardar una comilla en una cadena como contenido, simplemente se escribe \":

Código: javascript
var x = "Hoy es un \"gran\" dia";


Y entonces tenemos como salida (si imprimimos la cadena):



Si se va a imprimir una barra invertida, entonces se inserta una barra invertida antes de la barra invertida:


CodigoResultadoDescripcion
\""Comilla doble
\''Comilla simple
\\\Barra invertida

Compaginar líneas largas
Los programadores son muy reacios a tener líneas de más de 80 caracteres en su código. Entonces, si una declaración de JavaScript no cabe en una línea y debe de ajustarse, hay varias opciones.

Compaginación después de un operador:

Código: javascript
document.getElementById("salida").innerHTML =
   "Hola mundo";


O simplemente concatenar la salida con "+".

Código: javascript
document.getElementById("salida").innerHTML = "Hola " +
   "mundo";



Los strings tienen propiedades y métodos
Los strings tienen propiedades y métodos. Una de las propiedades más conocidas es la longitud de caracteres. En el siguiente ejemplo se determina la longitud de caracteres de la cadena "x" y se almacena en una variable. ¿Por qué se almacena esto en una nueva cadena extra y no se imprime directamente? Por razones didácticas. Esta es la mejor manera de ver la estructura de la instrucción length:

Código: javascript
var x = "Hola mundo";
var longitud = x.length;
alert(longitud);


Importante: no hay paréntesis después de la propiedad length. ¿Por qué? ¡Es una propiedad y no un método o una función!

Más sobre esto en un capítulo siguiente.