Resultado
Esta página no tiene parte de servidor en absoluto. La tabla que pegas la procesa JavaScript dentro de tu propio navegador, el gráfico se dibuja en un elemento canvas de tu máquina y el archivo de exportación se arma localmente. Nada se sube, se almacena ni se escribe en ningún registro. Puedes desconectar la red después de cargar la página y todo seguirá funcionando: es la forma más sencilla de comprobarlo tú mismo.
Datos y límites del método
| Qué cambia | La mayúscula o minúscula de cada letra — latina y cirílica; el resto de los caracteres no se tocan |
|---|---|
| Probabilidad de cambio | Cada letra tiene su propio sorteo — Math.random() comparado contra la proporción elegida |
| Intensidad 25% | En promedio, aproximadamente una letra de cada cuatro cambia al caso opuesto |
| Intensidad 50% | En promedio, aproximadamente una de cada dos letras cambia — valor predeterminado |
| Intensidad 75% | En promedio, tres letras de cada cuatro cambian — la variante más «ruidosa» |
| Regenerar | El botón «generar de nuevo» recalcula el resultado con el mismo texto sin volver a escribirlo |
Cuándo induce a error
- El resultado no es determinista: el mismo texto de entrada y la misma intensidad producen un conjunto distinto de letras cambiadas en cada ejecución — es Math.random(), no una función hash, así que no se puede reproducir a propósito un resultado idéntico.
- La intensidad es una probabilidad por letra, no una proporción exacta. Con 50% un texto corto de 10 letras puede terminar con entre 3 y 8 letras cambiadas al azar — en textos largos la proporción real se acerca al valor elegido, en textos cortos puede diferir bastante.
- Solo cambia la mayúscula o minúscula — las letras siguen siendo las mismas letras. Dígitos, puntuación, emojis y espacios nunca participan en el cambio, ni siquiera con intensidad del 75%.
- Si un carácter no tiene distinción entre mayúscula y minúscula en Unicode (poco común en algunos alfabetos), el sorteo igual ocurre pero no tiene ningún efecto visible sobre él.
Cómo se calcula
El texto se recorre carácter por carácter. Para cada uno se comprueba si es una letra (latina o cirílica) — si no lo es, el carácter se copia al resultado sin cambios.
Para cada letra se genera un número aleatorio entre 0 y 1 con Math.random(). Si es menor que la intensidad elegida (0.25, 0.5 o 0.75), se cambia la mayúscula/minúscula de la letra: mayúscula pasa a minúscula y minúscula pasa a mayúscula.
El cambio se hace comparando la letra con su propia versión en mayúscula: si la letra coincide con su versión toUpperCase(), ya es una mayúscula y se convierte a minúscula, y viceversa.
El botón «generar de nuevo» no toca el texto del campo de entrada — simplemente vuelve a ejecutar el mismo cálculo, y como depende de Math.random() internamente, el resultado sale distinto cada vez.
Preguntas y respuestas
¿Por qué el mismo texto da un resultado distinto cada vez?
El cambio de cada letra se decide con un sorteo aleatorio — es intencional, la herramienta no recuerda ni reproduce el resultado anterior. Pulsa «generar de nuevo» para obtener otra variante aleatoria.
¿Qué significa la intensidad 25/50/75%?
Es la probabilidad de que la mayúscula o minúscula de una letra dada cambie al caso opuesto. Con 75% cambian en promedio tres letras de cada cuatro, con 25% aproximadamente una de cada cuatro. El número exacto depende del azar, sobre todo en textos cortos.
¿Puedo obtener un resultado específico y repetible?
No, el generador es deliberadamente no determinista. Si necesitas un patrón predecible — como exactamente una letra de cada dos, sin azar — usa un conversor de mayúsculas normal en vez de esta herramienta.
¿También se cambian los dígitos y la puntuación?
No, solo se cambia la mayúscula o minúscula de las letras. Dígitos, espacios, emojis y puntuación siempre quedan exactamente igual que en el texto original.
¿Se envía el texto a algún sitio durante la generación?
No, todo el cálculo, incluidos los números aleatorios, se ejecuta directamente en tu navegador.