Różnica między window.location. assign () a window.location.replace ()

103

Jaka jest różnica między window.location.assign()i window.location.replace(), kiedy oba przekierowują na nową stronę?

Bakudan
źródło

Odpowiedzi:

36

Różnica polega na tym, jak traktowana jest historia. „Zastąp” nie da Ci historii, „przypisz” będzie.

martona
źródło
31

Według MDN:

Różnica w stosunku do tej assign()metody polega na tym, że po użyciu replace()bieżącej strony nie zostanie zapisana w historii sesji, co oznacza, że ​​użytkownik nie będzie mógł użyć przycisku Wstecz, aby przejść do niej.

Matt Ball
źródło
10
  1. location. assign ():

    Aby przypisać ścieżkę trasy, przekazując do niej ścieżkę. Assign da ci historię nawet po przypisaniu ścieżki.

    Sposób użycia: należy przekazać do niego wartość.

    Na przykład: location.assign("http://google.com")

location. assign ()

  1. location.replace ():

    Pomaga zastąpić ścieżkę, jeśli nie chcesz zachować historii. Nie da ci historii, gdy zmienisz jej ścieżkę.

    Sposób użycia: należy przekazać do niego wartość.

    Na przykład: location.replace("http://google.com")

location.repalce ()

Mohideen bin Mohammed
źródło