Fundamentos de JavaScript
Teoría: Inmutabilidad y tipos primitivos
📝 Imagina que tienes una hoja de papel con la palabra Alejandro escrita en ella. Quieres cambiar la primera letra por una B, pero aquí hay un problema:
¿Por qué no se pueden cambiar?
Esto sucede porque las cadenas de texto son un tipo primitivo.
number, string y boolean — son tipos primitivos. No se pueden modificar por dentro. Más adelante veremos otros tipos, como arrays y objetos, que sí funcionan distinto. 💡 Saber esto te ayuda a entender por qué a veces un cambio no funciona como esperas.
¿Cómo cambiamos una cadena de texto entonces?
No puedes modificar una parte, pero sí puedes crear una nueva con el valor deseado:
Por eso, cuando quieres cambiar parte de un texto, simplemente creas una nueva cadena y la asignas a la variable.
Diferencia clave
Tipado débil en JavaScript
En JavaScript, los datos pueden cambiar de tipo automáticamente, porque es un lenguaje de tipado débil. Eso significa que, si mezclas texto y números, JavaScript intentará convertir los valores según la operación.
- Cuando sumas número + texto, JavaScript convierte todo a cadena y los junta.
- Si es una resta o multiplicación, intenta convertir el texto a número.
- Si no puede, el resultado es
NaN(Not a Number).
💡 En la vida real, casi siempre recibes datos como texto (de formularios, archivos, usuarios). JavaScript intenta ayudarte convirtiendo los datos automáticamente, pero esto también puede provocar confusiones o errores.
Resumen
- Las cadenas de texto en JavaScript son inmutables.
- Para cambiar una cadena, siempre creas una nueva.
- JavaScript tiene tipado débil: los datos pueden cambiar de tipo automáticamente.
- Suma de número y texto concatena; otras operaciones intentan convertir a número y pueden dar
NaN.