- ¿Por qué no se pueden cambiar?
- ¿Cómo cambiamos una cadena de texto entonces?
- Diferencia clave
- Tipado débil en JavaScript
📝 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:
let firstName = 'Alejandro';
firstName[0] = 'B';
console.log(firstName); // => 'Alejandro'
¿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:
let firstName = 'Alejandro';
firstName = 'Blejandro';
console.log(firstName); // => 'Blejandro'
Por eso, cuando quieres cambiar parte de un texto, simplemente creas una nueva cadena y la asignas a la variable.
Diferencia clave
| Acción | ¿Es posible en JavaScript? | Explicación |
|---|---|---|
| Modificar un carácter en una cadena | ❌ No | Las cadenas son inmutables (tipo primitivo). |
| Reemplazar el valor de una variable con otro | ✅ Sí | La variable ahora apunta a otra cadena nueva. |
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.
console.log(1 + '7'); // '17' — concatena texto y número como cadena
console.log('5' - 3); // 2 — convierte texto a número y resta
console.log('one' * 'two'); // NaN — no tiene sentido matemático
- 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.
Para acceder completo a curso necesitas un plan básico
El plan básico te dará acceso completo a todos los cursos, ejercicios y lecciones de Códica, proyectos y acceso de por vida a la teoría de las lecciones completadas. La suscripción se puede cancelar en cualquier momento.