Tipos y operadores
En este capítulo vamos a hablar sobre cadenas de texto, números y booleanos (verdadero o falso), que son tipos de datos básicos en JavaScript, y cómo realizar algunas operaciones con ellos. Empecemos con las cadenas de texto.
Cadenas de texto
Una cadena de texto es un conjunto de caracteres encerrados entre comillas simples ('
) o dobles ("
). Por ejemplo:
Aunque parece fácil, existen tres errores comunes al definir una cadena de texto para que los tengas en cuenta e intentes evitarlos:
Olvidarse de la comilla de cierre. Por ejemplo:
Cerrar la cadena con la comilla incorrecta (p.e. abrir la cadena con comilla doble y cerrarla con comilla sencilla). Por ejemplo:
Insertar el mismo tipo de comillas dentro de la cadena de texto. Por ejemplo:
Para solucionar el último error (punto 3) podemos encerrar la primera cadena entre comillas simples y la segunda entre comillas dobles para que funcione:
Recuerda: Lo importante es que el texto no contenga la comilla que se utilizó para definir la cadena.
Pero ¿qué pasa si tenemos un texto con comillas simples y dobles? En ese caso tendríamos que utilizar el caracter de escape \
como en el siguiente ejemplo:
O
En el primer ejemplo escapamos con \
las comillas simples porque con esas fue que encerramos el texto, mientras que en el segundo ejemplo escapamos las comillas dobles porque con esas fue que encerramos el texto.
Imprimiendo una cadena de texto
Para imprimir una cadena de texto en la línea de comandos (o en la consola del navegador) utilizamos console.log
como hicimos en el capítulo anterior:
Si guardas esa línea en un archivo llamado strings.js
y lo ejecutas, el resultado debería ser el siguiente:
Concatenando cadenas
Es posible unir cadenas de texto con el operador +
. Por ejemplo, abre la consola de Node.js y ejecuta lo siguiente:
Deberías ver algo como esto:
Fíjate que las palabras no se separan con espacio automáticamente, tenemos que agregar los espacios explícitamente:
Debes tener cuidado al concatenar cadenas y números.
En este momento la concatenación de cadenas no es muy útil porque hubiesemos podido escribir todo el texto "Hola Mundo Cómo Estás"
dentro de una sola cadena, pero a medida que veamos otros conceptos se va a volver cada vez más importante.
Números
Crea un nuevo archivo llamado numbers.js
con el siguiente código:
Si lo ejecutas deberías ver algo así:
Fíjate en la segunda línea del ejemplo. JavaScript sigue el mismo estandar que en matemáticas, y por lo tanto la multiplicación se ejecuta primero que la suma. Puedes cambiar el comportamiento con paréntesis. Por ejemplo, cambia la operación de la segunda línea por 3 * (4 + 5)
. El resultado ahora debería ser 27
.
A diferencia de las cadenas de texto, los números no se encierran entre comillas de ninún tipo (de lo contrario JavaScript los trata como texto y no como números). Por ejemplo, abre la consola de Node.js y escribe "1" + "2"
. El resultado ya no es 3
, es la cadena de texto "12"
:
Debes tener cuidado al concatenar cadenas y hacer sumas, porque los dos utilizan el mismo operador +
. Por ejemplo, intenta lo siguiente en la consola de Node.js:
En el primer ejemplo JavaScript toma la cadena "1 + 2 es "
y la concatena con "1"
, luego concatena el "2"
, y el resultado es "1 + 2 es 12"
.
En el segundo ejemplo JavaScript realiza primero la operación (1 + 2)
, que da 3
, y luego concatena la cadena "1 + 2 es "
con ese 3
, por eso es que el resultado es ahora "1 + 2 es 3"
.
Valores y expresiones booleanas
Existen dos valores booleanos en programación: verdadero (true
) y falso (false
). Abre la consola de Node.js, escribe true
y oprime Enter, después escribe false
y oprime Enter. El resultado debe ser el siguiente:
También es posible escribir expresiones que evalúen a true
o false
. Escribe ahora las siguientes expresiones en la consola de Node.js:
5 > 3
5 >= 3
4 < 4
4 <= 4
2 === 2
2 !== 2
El resultado debería ser el siguiente:
A los operadorres <
, >
, <=
, >=
, ===
, !==
se les llama operadores lógicos y se utilizan para crear expresiones que se evalúan a un valor booleano: verdadero (true
) o falso (false
).
En JavaScript existe el operador ==
y el ===
(así como el !=
y !==
). Veamos dos ejemplos para explicar la diferencia:
En los dos ejemplos estamos comparando el número 1
con la cadena de texto "1"
. En la mayoría de lenguajes esto sería false
porque son tipos diferentes, estamos comparando un número con una cadena de texto. Pero el ==
realiza una conversión de tipos primero y después evalúa la igualdad.
Nota: Hoy el ==
y el !=
se consideran mala práctica y de ahora en adelante utilizaremos el ===
y !==
para hacer comparaciones.
Evalúate
¿Cuál es el problema con la siguiente cadena de texto y de qué formas lo podríamos solucionar?
¿Cuál sería el resultado de la siguiente expresión?
¿Qué problema tiene el siguiente código y cómo lo podemos solucionar para que evalúe a
true
?¿Cuál es la diferencia entre
==
y===
en JavaScript?
Last updated