Cómo hacer una redirección en JavaScript: mejores prácticas 2025

Entrenador de Python en Línea para Principiantes

Aprende Python fácilmente sin sobrecargarte de teoría. Resuelve tareas prácticas con verificación automática, recibe pistas y escribe código directamente en el navegador, sin instalar nada.

Start Course

Cómo hacer una redirección en JavaScript: de principiante a profesional en 2025

\n\n

¿Alguna vez ha llegado a un sitio web que, después de un segundo, lo «llevaba» a otra página? ¿O quizás ha presionado un botón y ha terminado en una sección completamente nueva sin recargar la página? Todo esto es magia de las redirecciones en JavaScript. La pregunta «How do I redirect to another webpage?» ha sido durante años una de las más populares en Stack Overflow, y no es casualidad: la redirección es una operación básica pero increíblemente importante en el desarrollo web.

\n\n

En este artículo no solo mostraremos cómo escribir window.location.href = '...'. Analizaremos qué método elegir en 2025, por qué unas formas son mejores que otras, y cómo no pisar el rastrillo que arruinaría la experiencia del usuario o el SEO de su sitio. ¡Abróchese el cinturón, será interesante!

\n\n

¿Por qué una redirección no es simplemente «ir a un enlace»?

\n\n

A primera vista, la tarea parece trivial: «ir a otra URL». Pero el diablo, como siempre, está en los detalles. Una redirección puede ser:

\n\n
    \n
  • Instantánea — el usuario ni siquiera lo nota.
  • \n
  • Con retardo — para mostrar un mensaje «Será redirigido en 5 segundos».
  • \n
  • Sin interrupciones — dentro de una Single Page Application (SPA), donde la página no se recarga.
  • \n
  • Condicional — solo para usuarios autenticados o desde dispositivos específicos.
  • \n
\n\n

Y para cada escenario, existe la herramienta correcta. Usar window.location.href para todos los casos es como clavar un clavo con un microscopio. Funciona, pero ¿para qué?

\n\n

Top 5 métodos de redirección en JavaScript en 2025

\n\n

Analicemos cada método con ejemplos y explicaciones de cuándo usarlo.

\n\n

1. El clásico: window.location.href

\n\n

Esta es la forma más conocida y sencilla. Simplemente asigna una nueva URL a la propiedad href del objeto window.location.

\n\n
// Redirección simple\nwindow.location.href = 'https://pythonlib.ru/new-page';\n\n// Redirección con conservación del historial (el usuario puede presionar "Atrás")\nwindow.location.href = '/about';
\n\n

Ventajas: Simplicidad, intuitividad, conserva el historial del navegador.

\n

Desventajas: Recarga completa de la página. Si necesita «cambiar» la URL sin recargar (como en SPA), este método no es adecuado.

\n\n

Cuándo usarlo: Cuando realmente necesita ir a otra página y la página anterior ya no es necesaria. Por ejemplo, después de enviar un formulario con éxito.

\n\n

2. Redirección sin historial: window.location.replace()

\n\n

Este método hace lo mismo que href, pero con una diferencia importante: reemplaza la entrada actual en el historial del navegador. El usuario no podrá volver a la página original con el botón «Atrás».

\n\n
// Redirección después de la cual no se puede volver "Atrás"\nwindow.location.replace('https://pythonlib.ru/new-page');
\n\n

Ventajas: Ideal para páginas temporales (por ejemplo, una página de verificación de edad o redirección desde una URL obsoleta). No ensucia el historial.

\n

Desventajas: Puede desorientar al usuario si esperaba el comportamiento estándar del botón «Atrás».

\n\n

Cuándo usarlo: Cuando redirige desde una URL temporal o de servicio que no debería «recordarse» en el navegador. Por ejemplo, después de una redirección de /old-page a /new-page.

\n\n

3. Cargar un nuevo documento: window.location.assign()

\n\n

El método assign() es una versión más «formal» de la asignación de href. Hace lo mismo: carga un nuevo documento y guarda una entrada en el historial.

\n\n
window.location.assign('https://pythonlib.ru/new-page');
\n\n

Básicamente, es un sinónimo de

Blogs

Book Recommendations