Diferencia entre window.location.assign () y window.location.replace ()

102

¿Cuál es la diferencia entre window.location.assign()y window.location.replace(), cuando ambos redireccionan a una nueva página?

Bakudan
fuente

Respuestas:

36

La diferencia es cómo se maneja la historia. "Reemplazar" no le dará el historial, "asignar" lo hará.

martona
fuente
31

Según MDN:

La diferencia con el assign()método es que después de usar replace()la página actual no se guardará en el historial de la sesión, lo que significa que el usuario no podrá usar el botón Atrás para navegar hasta ella.

Matt Ball
fuente
10
  1. location.assign ():

    Para asignar la ruta de la ruta pasando la ruta en ella. Assign le dará un historial incluso después de que se asignó la ruta.

    Uso del método: El valor debe ser pasado en ella.

    P.ej: location.assign("http://google.com")

location.assign ()

  1. location.replace ():

    Ayuda a reemplazar la ruta si no desea mantener el historial. No le dará un historial una vez que reemplace su ruta.

    Uso del método: El valor debe ser pasado en ella.

    P.ej: location.replace("http://google.com")

location.repalce ()

Mohideen bin Mohammed
fuente